我想使用XPath来定位一个div(class =“class1”)元素,它在这个html中封装了字符串'Text1'和'Text2':
<html>
<head>
<title></title>
</head>
<body>
<div class="class1">
<div>
<a href="http://url1.com">Text1</a>
</div>
<div>
<div>
<a href="http://url2.com">Text2</a>
</div>
</div>
</div>
<div class="class1">
<div>
<a href="http://url3.com">Text3</a>
</div>
<div>
<div>
<a href="http://url4.com">Text4</a>
</div>
</div>
</div>
</body>
</html>
但是这个xpath似乎不起作用:
//div[@class="class1" and contains(text(),"Text1") and contains(text(),"Text2")]
我怎样才能做到这一点?
1 回答
不要使用
text()
,因为它只与节点的直接文本子项相关: