【发布时间】:2016-01-17 06:11:15
【问题描述】:
我正在尝试使用HtmlAgilitypack.my html 代码获取嵌套 div 的值,如下所示:
这是我的代码:
var val = resultat1.DocumentNode.SelectSingleNode("//div[@class='journal-content-article']/div[@class='news_page max']/div[@class='news_page_wrapper']/div[@class='news_page_content']/div[@class='news_content']/div[@class='news_content_container']").InnerText;
我需要news_content_container 的内文,但是这行代码返回Object reference not set to an instance of an object
这会返回错误:
var val = resultat1.DocumentNode.SelectSingleNode("//div[@class='journal-content-article']/div[@class='news_page max']").InnerText;
这返回值但不是预期值:
var val = resultat1.DocumentNode.SelectSingleNode("//div[@class='journal-content-article']").InnerText;
【问题讨论】:
-
对象引用未设置错误显然是因为 SelectSingleNode 返回 null 并且您尝试获取 InnerText 属性。您应该尝试逐步选择元素以找到问题。
-
@MehrzadChehraz 是的,你是对的,但我使用 xpath 来获取元素值
-
Okey,但是你需要通过尝试逐步选择元素来调试,以找到 SelectSingleNode 返回 null 的位置。可能是拼写错误或其他问题。
-
我更新了帖子,正如我所说的第二个 div 返回空引用,我的问题是为什么?
-
downvoter>>>>评论
标签: c# html asp.net html-agility-pack html-parser