0

我正在尝试在 html 页面中提取带有id的 div 标签内的内容。 job_title1htmlagilitypack用来获取数据。这是我的代码

        var obj = new HtmlWeb();
        var document = obj.Load("url of website ");

        var bold = document.DocumentNode.SelectNodes("//div[@class='job_title1']");

        foreach (var i in document.DocumentNode.SelectNodes("//div[@class='job_title1']"))
        {
            Response.Write(i.InnerHtml);
        }

当我尝试运行此代码时,我在 foreach 中遇到错误,说对象引用未设置为对象的实例。请帮我解决这个问题。

4

2 回答 2

1

你说“ id为job_title1的div标签”,xpath不应该是:

document.DocumentNode.SelectNodes("//div[@id='job_title1']")
于 2012-07-11T05:44:16.813 回答
0

像这样检查if null

var nodes = document.DocumentNode.SelectNodes("//div[@class='job_title1']");

if(nodes != null)
    foreach (var i in document.DocumentNode.SelectNodes("//div[@class='job_title1']"
    ...

编辑\"改用'

var obj = new HtmlWeb();
var document = obj.Load("url of website ");

var bold = document.DocumentNode.SelectNodes("//div[@class=\"job_title1\"]");

if(bold!= null)
    foreach (var i in bold)
    {
        Response.Write(i.InnerHtml);
    }
于 2012-07-11T05:42:42.783 回答