1

我需要通过 xpath 检测一个元素(带有 href 的图像),但我只知道 href 的一部分

这是html

<a href="/mysite.com?id=123456"><img src="//user/banners/16/08/1614708.gif" alt="AAA" data-tip="BBB" currentitem="false" class="" width="468" height="60"></a>

我知道 id 123456(href 的一部分)

我尝试了这个xpath,它可以识别带有href一部分的元素,但只在文本链接中工作

xpath=//a[contains(@href, "123456")]

如何仅使用 href 的一部分检测元素?

我只需要xpath。

4

2 回答 2

0

您需要进入/imgwhere//a属性hrefcontains()ends-with()的 id 这是您需要的 XPATH。至少我会在这种情况下使用这个 XPATH

//a[ends-with(@href, 'your-id-here')]/img
于 2020-11-02T20:42:37.817 回答
0

您可以使用正则表达式。就像是

driver.find_element_by_xpath("//input[starts-with (@name,'Tut')]")

或如你所描述

driver.find_element_by_xpath("//input[contains(@name,'sel')]").

注意一件事,不要使用双引号,作为属性值搜索的字符串。像我之前描述的那样使用单引号。

于 2020-11-02T20:23:25.050 回答