Как я могу получить следующий брат, используя HtmlAgilityPack? - PullRequest
0 голосов
/ 01 мая 2020

У меня есть много тегов tr в html код:

<div class="noticeTabBoxWrapper">
 <tr>
  <td>
   <span>Text for anchor</span>
  </td>
 </tr>
 <tr>
  <td>
   <span>*constantly changing text*</span>
  </td>
 </tr>

В моем коде я пишу это:

//div[@class = 'noticeTabBoxWrapper']//span[contains(text(), 'Text for anchor')]").InnerText

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

1 Ответ

0 голосов
/ 01 мая 2020

Предположим, raw - это ваши данные выборки:

var doc = new HtmlDocument();
doc.LoadHtml(raw);
var xpath = "//div[@class='noticeTabBoxWrapper']//span[contains(., 'Text for anchor')]/following::td[1]/span";
var result = doc.DocumentNode.SelectSingleNode(xpath);
Console.WriteLine(result.InnerText)

Вывод: *constantly changing text*

...