Привет, я только что зарегистрировался на этом сайте, потому что мне нужна помощь.
Я хочу получать результаты с веб-сайта nyaa.eu.
В основном:
- Узел таблицы называется
<table class="tlist">
- Каждый узел строки называется
<tr class="tlistrow">
, иногда это "доверенный tlistrow" и т. д. - Узлы, которые я пытаюсь получить:
<td class="tlistname"> <td class="tlistsize"> <td class="tlistsn"> and <td class="tlistln">
Сначала я получаю таблицу, содержащую всю информацию о торрентах:
HtmlNode hnTable = doc.DocumentNode.SelectSingleNode("//table[@class='tlist']");
Итак, следующая вещь — получение всех строк, которые содержат tlistrow в своем атрибуте класса:
HtmlNodeCollection hncRows = hnTable.SelectNodes("//tr[contains(@class,'tlistrow')]");
И, наконец, проблема в том, что когда я читаю каждый узел, он всегда один и тот же:
foreach (HtmlNode row in hncRows)
{
foreach (HtmlNode child in row.ChildNodes)
{
if (child.SelectSingleNode("//td[@class='tlistname']") != null)
{
MessageBox.Show("Something found!\n\n" + child.SelectSingleNode("//td[@class='tlistname']").InnerText);
break;
}
}
}
Текст, отображаемый в окне сообщения, всегда один и тот же, похоже, он выбирает только один узел несколько раз.
Как я могу это исправить или если я делаю что-то не так, пожалуйста, поправьте меня.