在网页中:
<h3 class="xh-highlight">Units Currently On Bed List</h3>
"[total beds=0]
"
我想找到总床数x = 0。 我该怎么办?
答案 0 :(得分:0)
你的问题和你的评论有点矛盾。是否要在标题后找到文本,或者是否要查找包含文本[total beds=0]
的元素?另外,您希望在文档中导航的准确程度如何?
要查找任何h3
元素之后的文字,您可以使用此//h3/following-sibling::text()[1]
(参见XPath - select text after certain node)。
要在h3
元素之后使用类&#34; xs-highlight&#34;查找文本。你可以使用这个://h3[@class='xh-highlight']/following-sibling::text()[1]
为了更加精确,您还可以查找标题文字://h3[@class='xh-highlight' and text()='Units Currently On Bed List']/following-sibling::text()[1]
但是,这与您的第一条评论中的html不匹配,因此您可能需要调整标题类和文本值。此外,即使它与h3
元素之间存在其他元素,它也会找到任何第一个文本。
现在,您的第二条评论使您看起来确实想要找到包含该文本的元素。 //*[text()='[total beds=0]']
无效的原因是因为文字中的换行符。如果你可以在源中摆脱它应该匹配,否则你可以&#34;忽略&#34;它使用//*[normalize-space(text())='[total beds=0]']
在xpath中。 (这是假设你问题中的文字周围的引号实际上并不在文档中。)