Ещё пара вопросов по XPath

  • Автор темы Автор темы sibbora
  • Дата начала Дата начала
что ты флиртуешь как девочка. уверен, что работает - напиши свой рабочий код.
Неа, не буду писать, жди, может кто-то и придет на помощь, а лучше учи xPath.

Он неправильно html привел, поэтому у него не работает :)
 
а xpath то умеем составлять и проверять
к чему эта ваша постоянная неуместная ирония? "умеет - не умеет". просто покажите как. дайте рабочий код. внимательно прочитав перед этим цель. ну, всё ж уже, с картинками, вроде показал...
 
к чему эта ваша постоянная неуместная ирония? "умеет - не умеет". просто покажите как. дайте рабочий код. внимательно прочитав перед этим цель. ну, всё ж уже, с картинками, вроде показал...
к сожалению без иронии жизнь скучна, поэтому только с ней. а раз не нравится то значит мне тут и делать нечего. как выше сказал RoyalBank, не буду писать, жди, может кто-то и придет на помощь. Удачки :bk:
 
  • Спасибо
Реакции: RoyalBank и djaga
Он неправильно html привел, поэтому у него не работает :-)

ну не хочешь ему объяснять, объясни мне тогда. я просто никогда про такой способ составления xpath раньше не слышал, вот первый раз увидел. только не получается.

вот смотри верно ведь xpath составлен?
84883
идем в project maker.
C#:
Развернуть Свернуть Копировать
HtmlElement he = instance.ActiveTab.FindElementByXPath("//h1/text()[2]", 0);
if(he.IsVoid) throw new Exception("элемент не найден");
else
{
    project.SendInfoToLog(he.InnerText.Length.ToString());
    project.SendInfoToLog(he.InnerHtml.Length.ToString());
    project.SendInfoToLog(he.OuterHtml.Length.ToString());
    return he.OuterHtml;
}
84884

видишь, он не выходит по красной, элемент найден. Но ничего вытащить не дает. при этом я пробовал навести на него мышку - не наводит (уводит куда в угол).

может это баг PM или какая-то особенность конкретного сайта, хз.
 
  • Спасибо
Реакции: JurgenZolle
ну хотя логично, чё я туплю. С помощью xpath

C#:
Развернуть Свернуть Копировать
//h1/text()[2]

мы ведь находим не тэг, а конкретный текст, естественно, нет у него никаких атрибутов. толку тогда от такого xpath ноль по сути, если никто не напишет, как вытащить текст
 
  • Спасибо
Реакции: JurgenZolle
мы ведь находим не тэг, а конкретный текст, естественно, нет у него никаких атрибутов. толку тогда от такого xpath ноль по сути, если никто не напишет, как вытащить текст
вот-вот. поэтому мне интересно, возможна ли в зено какая-нить реализация подобного? какой-нить метод...
типа string text = he.GetFuckinTextOutterTags();
 
вот-вот. поэтому мне интересно, возможна ли в зено какая-нить реализация подобного? какой-нить метод...
типа string text = he.GetFuckinTextOutterTags();
насколько я знаю, нет такого метода в документации. ну подожди ещё, может кто напишет, но скорее всего и дальше придется тебе регулярками тащить
 
  • Спасибо
Реакции: JurgenZolle
Нет времени разбираться, почему в ZP, что-то может не работать. Используй HtmlAgilityPack, и будет счастье.
Действительно, спасибо. @JurgenZolle , RoyalBlank навел на мысль, что можно использовать другой метод, вот он (или пользоваться HtmlAgilityPack, как он написал):

C#:
Развернуть Свернуть Копировать
string text = ZennoPoster.Parser.ParseByXpath(instance.ActiveTab.DomText, "//h1/text()[2]", "innerText").ToList()[0];
return text;
 
можно использовать другой метод
да, действительно, всё работает, как я и хотел. я про этот метод и не вспомнил, уперся в FindElement и тормоза...
Спасибо вам большое!!
 
  • Спасибо
Реакции: volody00

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)