使用Python和Selenium通过标题查找并点击元素

25 投票
5 回答
87144 浏览
提问于 2025-04-18 17:39

我在找一个网站。在检查元素的时候,看到了这个:

<span id="item60" title="Havai 30" class="item button link">Get</span>
<span id="item90" title="Classic 50" class="item button link">Get</span>

我需要通过标题来获取并点击一个元素。像这样:

browser.find_element_by_xpath('//*[@id="item60"]').click()

但是是通过 标题 来实现的。

5 个回答

-1

对我来说,使用页面对象模式可以很好地解决这个问题:

@FindBy(xpath = "//*[@title='Havai 30']")
WebElement imHavai;
1

这个方法对我有效:

driver.find_element_by_xpath('//*[@title="Havai 30"]').click()

** 一定要记得加上开头和结尾的方括号!

5

关于Java

String title = "SOME TITLE";
driver.findElement(By.cssSelector("[title^='" + title + "']")).click();
17

使用:

browser.find_element_by_xpath('//*[@title="Havai 30"]').click()

这样做就能像你说的那样对我有效。

34

就像barak manos说的,答案是:

'//*[@title="Havai 30"]'

在最后加上[0],因为它是一个列表。

撰写回答