- Регистрация
- 29.05.2017
- Сообщения
- 447
- Благодарностей
- 700
- Баллы
- 93
Пробую спарсить с помощью XPath выдачу рамблера.
Пример: http://nova.rambler.ru/search?query=новости омска 25 11 2017
Взял пример отсюда http://zennolab.com/discussion/threads/pomogite-s-parsingom-teksta.28069/#post-199924
Подставил свои значения в этот код, снипет выполняется успешно, но результат пустой. Почему так?
Прикладываю снипет
Пример: http://nova.rambler.ru/search?query=новости омска 25 11 2017
Взял пример отсюда http://zennolab.com/discussion/threads/pomogite-s-parsingom-teksta.28069/#post-199924
Подставил свои значения в этот код, снипет выполняется успешно, но результат пустой. Почему так?
Прикладываю снипет
Код:
var html = project.Variables["HTML"].Value; // html страница
var doc = new HtmlDocument();
doc.LoadHtml(html); // создали объект HtmlDocument и загрузили в него html страницу
var nodes = doc.DocumentNode
.SelectNodes(".//div[@class='b-serp-item']") // взяли нужные узлы
.Select(n => n.FirstChild)
.Where(n => n.FirstChild.GetAttributeValue("class", "") == "b-serp-item__header") // взяли без рекламы
.ToList();
var list = new List<string>();
foreach (var node in nodes) // в цикле добавляем в список элемент состоящий из двух строчек
{
var title = node.FirstChild.FirstChild.InnerText; // текст первой строчки
var desc = node.SelectSingleNode(".//p[@class='b-serp-item__header']").InnerText; // текст второй строчки
list.Add(desc + "\r\n" + title); // добавил в список "двойную строчку"
}
var res = string.Join("\r\n", list); // объединил двойный строчки
return res;