Надеюсь, кто-то может мне помочь.
Предположим, у меня есть html-документ, содержащий несколько div, подобных этому примеру:
<div class="search_hit">
<span prop="name">Richard Winchester</span>
<span prop="company">Kodak</span>
<span prop="street">Arlington Road 1</span>
</div>
<div class="search_hit">
<span prop="name">Ted Mosby</span>
<span prop="company">HP</span>
<span prop="street">Arlington Road 2</span>
</div>
Я использую HtmlAgilityPack для получения html-документа. Мне нужно знать, как я могу получить промежутки для каждого "search_hit" -div?
Моя первая мысль была примерно такой:
foreach (HtmlAgilityPack.HtmlNode node in doc.DocumentNode.SelectNodes("//div[@class='search_hit']"))
{
foreach (HtmlAgilityPack.HtmlNode node2 in node.SelectNodes("//span[@prop]"))
{
}
}
Каждый div должен быть объектом с включенными пролетами как свойствами. I. e.
public class Record
{
public string Name { get; set; }
public string company { get; set; }
public string street { get; set; }
}
И этот список будет заполнен:
public List<Record> Results = new List<Record>();
Но XPATH, который я использую, не выполняет поиск в подзоне, как он должен делать. Он швыряет, что он снова и снова ищет весь документ.
Я имею в виду, что я уже работал таким образом, чтобы получить только пробелы всей страницы. Но тогда у меня нет отношения между пролетами и div. Значит: я больше не знаю, какой промежуток связан с каким div.
Кто-нибудь знает решение? Я уже так много играл, что теперь я полностью смущен:)
Любая помощь приветствуется!