如何使用 XPath 在 HTML 中搜索标题?
How to search title in HTML using XPath?
我正在尝试从下面的 html 示例中获取 'RGF Administrator' 文本。困难在于标题可以采用两个值:'Application Settings' 或 'Параметры приложения'。同时,html 可能包含其他 title = 'Application options'.
的元素
我可以使用 xPath 吗?
<div>
<button
title="Application options">
<span>
<span>
<bdi>
RGF Administrator
</bdi>
</span>
</span>
</button>
</div>
我使用 selenium,但无法确定 'RGF Administrator' 的 xPath。
xpath = "//*[@title='Параметры приложения' or @title='Application options']"
将不起作用,因为与此同时,html 可能包含标题为 'Application options' 的其他元素。
如果你使用的是selenium,那么你需要使用get_attribute(string)
方法。因此,例如,当您找到元素 xpath:
element = driver.find_element_by_xpath("xpath")
然后
element.get_attribute("title")
获得Application options
在您的实际 xml 上尝试这个 xpath 表达式,看看它是否有效:
//div/button[@title = ('Параметры приложения', 'Application options')]//bdi/text()
您的网页上有多少个 bdi 容器?如果只有 1,你可以直接使用
//bdi
而且您不需要任何路径。
我正在尝试从下面的 html 示例中获取 'RGF Administrator' 文本。困难在于标题可以采用两个值:'Application Settings' 或 'Параметры приложения'。同时,html 可能包含其他 title = 'Application options'.
的元素我可以使用 xPath 吗?
<div>
<button
title="Application options">
<span>
<span>
<bdi>
RGF Administrator
</bdi>
</span>
</span>
</button>
</div>
我使用 selenium,但无法确定 'RGF Administrator' 的 xPath。
xpath = "//*[@title='Параметры приложения' or @title='Application options']"
将不起作用,因为与此同时,html 可能包含标题为 'Application options' 的其他元素。
如果你使用的是selenium,那么你需要使用get_attribute(string)
方法。因此,例如,当您找到元素 xpath:
element = driver.find_element_by_xpath("xpath")
然后
element.get_attribute("title")
获得Application options
在您的实际 xml 上尝试这个 xpath 表达式,看看它是否有效:
//div/button[@title = ('Параметры приложения', 'Application options')]//bdi/text()
您的网页上有多少个 bdi 容器?如果只有 1,你可以直接使用
//bdi
而且您不需要任何路径。