Html XPath值选择
我想得到一个值“square”(例如201)。如前所述,我尝试过这样做,但没有成功:Html XPath值选择,html,xpath,Html,Xpath,我想得到一个值“square”(例如201)。如前所述,我尝试过这样做,但没有成功: ./li[attributeTitle='Этаж'] Html代码: <div class = "A"> <ui class = "B"> <li> <span class = "attributeTitle"> Floor </span> <span class = "
./li[attributeTitle='Этаж']
Html代码:
<div class = "A">
<ui class = "B">
<li>
<span class = "attributeTitle"> Floor </span>
<span class = "attributeValue"> 3 </span>
</li>
<! A random more items "li" >
<li>
<span class = "attributeTitle"> Square </span>
<span class = "attributeValue"> 201 </span>
</li>
<li>
<span class = "attributeTitle"> Nrooms </span>
<span class = "attributeValue"> 4 </span>
</li>
</ui>
</div>
地板
3.
广场
201
诺姆斯
4.
感谢您的帮助。您可以使用xpath中的contains()
函数检查文本是否包含某些字符串:
"//div[@class='attributeTitle'][contains(text(),'Square')]"
这将使您获得此节点:
<span class = "attributeTitle"> Square </span>
并添加
[1]
,表示如果有多个兄弟姐妹,我们只需要第一个兄弟姐妹。您也可以使用[class='attributeValue']
来表示我们只需要具有此特定类的同级,或者如果您相信只有一个同级,则根本不使用任何同级。它是如何工作的?您希望看到什么?您看到了什么?请显示一个完整但最小的输入HTML文档。谢谢更多帮助:.//div[@class='attributeTitle'和contains(text(),'Square')]
同样有效。如果发布的是完整的DOM,那么在获取值时不需要[1],因为Square元素之后只有一个span节点。。
"//div[@class='attributeTitle'][contains(text(),'Square')]/following-sibling::span[1]"