我有以下 HTML。我需要使用 DOWN 作为关键字来获取 XPath。
<span>
"DEVICE: some random values that I'm not bothered about"
<span class="c-emoji_plain_text">:sensor_1000_4_1:</span>
"/interfaces/:/interfaces/:mib2d], TRIGGER: interface_status, MESSAGE:
$interface_name is DOWN"
</span>
我在这里面临的问题是,当我使用以下 XPath 时,它无法被识别:
//span[contains(text(),'DOWN')]
我看到使用了子跨度上方的文本,但没有使用其下方的文本。
请帮忙。
最佳答案
尝试替换
//span[contains(text(),'DOWN')]
与
//span[contains(.,'DOWN')]
选择所需的span
节点
请注意,此类选择器可以匹配多个元素。为了使其更具体,您可以使用
//span[span and contains(.,'DOWN')]
这将匹配包含 span
子节点以及 "DOWN"
子字符串的 span
还有
//span[contains(text()[2],'DOWN')]
应该可以解决问题
关于selenium - 查找带有闭合标签下方文本的 XPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51894070/