Я пытаюсь вытащить данные из двух разных Div, но я могу получить данные только из первого Div (города). У меня есть код установки в качестве примера со страницы вики, где все элементы Li от H2 id = cities
и id = Other_destinations:
Чтение нескольких Div с помощью HtmlAgilityPack
var xpathData = "//h2[span/@id='Cities' or @id='Other_destinations']" + "/following-sibling::ul[1]" + "/li";
я тогда пишу все, что было в литиево-х в текстовый документ.
private void button1_Click(object sender, EventArgs e)
{
List<string> destinations = new List<string>();
var xpathData = "//h2[span/@id='Cities' or @id='Other destinations']" + "/following-sibling::ul[1]" + "/li";
WebClient web = new WebClient();
String html = web.DownloadString("http://wikitravel.org/en/Germany");
hap.HtmlDocument doc = new hap.HtmlDocument();
doc.LoadHtml(html);
using (StreamWriter write = new StreamWriter(@"C:\path\testText.txt"))
{
foreach (hap.HtmlNode node in doc.DocumentNode.SelectNodes(xpathData))
{
string all = node.InnerText;
//Writes to text file
write.WriteLine(all);
}
}
}
Примечание о 'hap'
, я должен был использовать с помощью hap = HtmlAgilityPack;
из-за какой-то странный конфликт.
Спасибо за любую помощь/предложения/руководство!
Хороший улов! К сожалению, это не полностью решило проблему. Теперь он только гаснет и захватывает первый li в Div ... – cbrannin
Я проверил ваш код и отлично работал на своей машине. Я собираюсь отредактировать свой ответ с помощью моего кода. Пожалуйста, запустите его. –
Ну, ты прав. Этот код работает очень хорошо. С тех пор я изменил код, в котором эта часть используется, и она захватывает только первый ли из раздела «Other_destinations» Div ... Должно быть, что-то сработало где-то в другом месте ... Спасибо. – cbrannin