Python-Selenium通过href定位元素

Python-Selenium通过href定位元素,python,html,selenium,Python,Html,Selenium,我正在尝试使用selenium查找(并单击)Python程序的特定页面 我试过了 driver.findElement(By.cssSelector("a[href*='text']")).click(); 及 使用text我正在搜索的内容。这些错误不起作用 AttributeError: 'WebDriver' object has no attribute 'findElement' 我只能假设它不能查找元素,因为这是针对Java的,而不是针对Python的 网站上链接的唯一区别因素是h

我正在尝试使用selenium查找(并单击)Python程序的特定页面

我试过了

driver.findElement(By.cssSelector("a[href*='text']")).click();

使用
text
我正在搜索的内容。这些错误不起作用

AttributeError: 'WebDriver' object has no attribute 'findElement'
我只能假设它不能查找元素,因为这是针对Java的,而不是针对Python的

网站上链接的唯一区别因素是href属性

所有其他标记都有重复。没有办法,我可以100%猜测正确的链接,所以我还需要定位器是由部分文本

还有什么可以开始的吗?我可以使用其他程序吗?有人成功地做到了这一点吗?我尝试过搜索,但没有人问过这个问题。

您可以尝试:

from selenium.webdriver.common.by import By
...
driver.find_element(By.PARTIAL_LINK_TEXT, 'text').click()

编辑:对于href本身的部分文本搜索,请尝试:

from selenium import webdriver
...
driver.find_element_by_xpath("//a[contains(@href,'text')]").click()
资料来源:


这两种方法都不起作用,第一种方法改变了webdriver,改变了一切,而且两种方法都不在href本身中搜索,只搜索包含href的文本。这确实有效!非常感谢你。我已经试了差不多一整天了。任何人阅读-使用他的编辑!
from selenium import webdriver
...
driver.find_element_by_partial_link_text("text").click()
from selenium import webdriver
...
driver.find_element_by_xpath("//a[contains(@href,'text')]").click()