HtmlAgilityPack返回null

时间:2014-04-16 06:16:50

标签: winforms c#-4.0 html-agility-pack

我有一个由HtmlAgilityPack编码的程序,但无法正常工作。 Url和节点是正确的。但它有一个错误,指的是foreach。

错误是

  

对象引用未设置为对象的实例。

以前工作过。我删除HtmlAgilityPack DLL并再次添加它。但是不起作用。 我需要访问标签的href。

我的代码是:

string source = wc.DownloadString("http://example.com");

HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
document.LoadHtml(source);
foreach (HtmlNode div in 
         document.DocumentNode.SelectNodes("//div[@class='test']/a"))
{
//do something
}

1 个答案:

答案 0 :(得分:0)

感谢Ulugbek Umirov,这是您的代码是一个空引用检查:

string source = wc.DownloadString("http://example.com");

HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
document.LoadHtml(source);

var documentNode = document.DocumentNode;
if ( documentNode!=null )
{
    var nodes = documentNode.SelectNodes("//div[@class='test']/a");
    if ( nodes!=null )
    {
        foreach (HtmlNode div in nodes)
        {
            // Do something...
        }
    }
}