SelectNode Возвращает Ноль в Html Agility Pack

0

Я видел много похожих сообщений, оба из них говорят о том, что SelectSingleNode возвращает null. Я не совсем уверен, что моя проблема связана с этим. Возможно, у меня были некоторые проблемы, которые я не мог понять. Здесь мои коды:

string url = "https://www.google.com/#q=nothing";    
HtmlWeb web = new HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
web.Load(url);
var nodes = doc.DocumentNode.SelectNodes("//div[@class='content']");
if (nodes != null) {
    foreach(HtmlNode item in nodes) {
        if (item != null) {
            string s = item.InnerText;
            listView1.Items.Add(s);
        }
    }
} else {
    MessageBox.Show("Nothing found here");
}
Теги:
html-agility-pack

1 ответ

1
Лучший ответ

Если нет тегов <div> с классом, равным content, то ничего не найдено, и у вас есть null. Это по дизайну.

UPDATE: вы не загружаете данные в HtmlDocument. У вас есть экземпляр doc который не связан с данными, которые вы загружаете. Используйте документ, возвращаемый методом Load:

HtmlDocument doc = web.Load(url);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню