2011-07-20 181 views
1

嘿家伙coudln't避开这个。我有结构如下的HTML:Xpath获取没有节点子内容的节点

<div class="review-text"> 
<div id="reviewerprofile"> 
<div id="revimg"></div> 
<div id="reviewr">marc</div> 
<div id="revdate">2011-07-06</div> 
</div> 
this is an awesome review 

</div> 

什么,我试图让仅仅是文本“这是一个真棒检讨”,但everytyme我查询节点i也得到孩子的其他内容。现在就用这样的东西“.div[@class='review-text']”如何只获取文本?坦克你非常多

回答

1

你快到了!只需在XPath末尾添加/ text()即可获取文本节点。

0

诸如// div的XPath表达式返回一组节点,在本例中为div元素。这些实际上是指向原始树中原始节点的指针;节点仍然连接到他们的父母,孩子,祖先和兄弟姐妹。如果您看到div元素的子元素并且不想要它们,那不是XPath处理器的错误,这是任何处理由XPath表达式返回的结果的软件的错误。

按照建议,您可以通过使用/ text()来获得div元素的直接子元素。但是,假设您确切知道您期望在HTML页面中找到什么 - 如果“真棒”以斜体显示,它会给您不同的东西。

相关问题