为什么HtmlAgilityPack SelectSingleNode没有找到div

时间:2013-11-20 13:53:47

标签: c# xpath html-agility-pack selectsinglenode

在现实世界的C#脚本中,我尝试了每个排列(尽管有人会告诉我,我已经错过了一个)我理解为XPath值可行,但总是返回null。将其修改为SelectSingleNode似乎最简单的使用但仍然出于某种原因它只返回<body>的值

分配的文件:

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

这是我第一次看到XPath,而且我对HtmlAgilityPack的经验有限。因此,毫无疑问,这对我来说是一个非常基本的失败。但是:

HtmlAgilityPack.HtmlNode node = doc.DocumentNode.SelectSingleNode("//body");

结果:节点不为空

将其替换为div或任何其他元素(脚本测试中的ARE不止一个)

HtmlAgilityPack.HtmlNode node = doc.DocumentNode.SelectSingleNode("//div");

结果:

  

节点为空

我错过了什么?

1 个答案:

答案 0 :(得分:0)

抱歉,我的不好 - 深究这一点。虽然上面的adventurebods URL中的示例是预期测试脚本的来源,但实际上我发现它有更少的东西。此要求之前的过程从剪贴板复制脚本 - 当然是柠檬我认为这是正确的但实际上我在使用后有一个截断的脚本:

htmlText = Clipboard.GetText(TextDataFormat.Html);