1

我有以下部分 html 文档和 html 文档

<div class="boxContent">
 <div class="boxBold">Name1</div>
 Cat            
 <div class="boxBold">Name2</div>
 Dog                        
 <div class="boxBold">ID</div>
 749 X
</div>

我试图获得价值709 X并忽略其他一切,有没有标准可以做到这一点?

当我尝试获取父 div 的内部文本时,它给了我CatDog749 X

我试过myDocument.DocumentNode.SelectSingleNode("//div[@class='boxContent']").InnerText 了,但第三个孩子 div 和 div 之间有什么关系749 X

4

3 回答 3

2

此 XPath 将选择“boxContent”类中div包含“ID”之后的文本:div

//div[@class='boxContent']/div[. = 'ID']/following-sibling::text()

笔记

  • 如果 boxContent 上可能有多个类div,请使用 contains()而不是简单的相等测试。
  • 如果可能有多个div类“boxContent”,请根据您的要求进行选择或迭代。
于 2013-10-15T13:47:50.263 回答
0

你有没有尝试过 :

myDocument.DocumentNode.SelectSingleNode(//div[@class='boxContent'] [3] ).InnerText

于 2013-10-15T13:43:23.373 回答
0

你得到CatDog749 X是因为你选择了所有具有 class 的节点boxContent,你需要选择特定的 div。

XPath: //div[@class='boxContent']/last(): 获取 div 中的最后一个节点:749 X

于 2013-10-15T13:45:00.027 回答