【发布时间】:2016-05-18 17:16:51
【问题描述】:
这是我尝试在其上使用 XPath 的 HTML 的模拟:
<div class="stream-links">
<div>
<a href="link">value I need</a>
</div>
<div>
<a href="link">value I need</a>
</div>
<div>
<a href="link">value I need</a>
</div>
</div>
现在,当我在浏览器中使用 XPath 模式 //div[@class='stream-links']/div/a 时,它会选择 <a ...> 节点。每次我按下回车键都会选择下一个,但是当我使用模式//div[@class='stream-links']/div/a/text() 时,它会卡在第一个<a ...> 节点的文本上,所以当我按下回车键时它不会移动到下一个。 (顺便说一句,在 FireFox 上使用 Firebug 插件来检查元素)
我正在用 C# 编写一个程序,并且父 div 下的 div 数量是一个变量,所以我不能在这里使用//div[@class='stream-links']/div[number]/a/text(),因为我需要获取所有这些。
我使用 Xpath 的代码是HtmlNodeCollection NODECOL1 = MEDOC.DocumentNode.SelectNodes("//div[@class='stream-links']/div/a[1]");
所以我的问题是:
1) Firebug 没有跳转到下一个<a...> 是否有特殊原因,或者它是插件方面的“错误”?
2) 我的代码仍然可以工作还是我需要以其他方式处理它?
我的其余代码有些地方不对劲,所以我看不出我的那部分代码是否真的有效,如果我现在可以自己测试它,我不会问问题 2。
【问题讨论】:
-
您能解释一下接受的答案是如何解决您的问题的吗?