Selenium webdriver Python Selenium按链接查找文本问题

Selenium webdriver Python Selenium按链接查找文本问题,selenium-webdriver,Selenium Webdriver,我正在尝试编写一些代码来自动化我所做的赌注。我正在使用Python 3和Selenium以及Chrome驱动程序 我正在使用以下网站 www.bet365.com 我已经设法做了一个脚本登录到该网站,但我不能让它选择“赛马”链接。我的守则如下: 浏览器。通过链接文本(“赛马”)查找元素。单击() 它向我提供了以下错误消息: NoSuchElementException:消息:没有这样的元素:无法找到元素:{“方法”:“链接文本”,“选择器”:“赛马”} (会话信息:chrome=80.0.398

我正在尝试编写一些代码来自动化我所做的赌注。我正在使用Python 3和Selenium以及Chrome驱动程序

我正在使用以下网站

www.bet365.com

我已经设法做了一个脚本登录到该网站,但我不能让它选择“赛马”链接。我的守则如下:

浏览器。通过链接文本(“赛马”)查找元素。单击()

它向我提供了以下错误消息:

NoSuchElementException:消息:没有这样的元素:无法找到元素:{“方法”:“链接文本”,“选择器”:“赛马”} (会话信息:chrome=80.0.3987.122)

有人有什么建议吗?我在网上搜索过,但找不到解决方案


谢谢。

您必须使用xpath按文本查找元素:

driver.find_element_by_xpath("//a[text()=\"Horse Racing\"]").click()
将标签“a”更改为右侧


希望这有帮助。

在主页上找不到赛马。它只有在您登录后才可用吗?谢谢您的回复。然而,你能澄清一下把“a”改为“正确的”是什么意思吗?您是指完整的XPath,在本例中是“/html/body/div[1]/div/div[2]/div[1]/div[1]/div[1]/div/div[17]/text()”。谢谢。在xpath描述(
“//a[text()=“Horse Racing\”]”“
)中,它正在寻找一个带有文本“Horse Racing”的标记“//a”。我不知道你要找的元素是a还是a,等等。。。因此,如果元素不存在,则需要更改它。我在网站上没有帐户来测试它。好吧,我没有阅读你写的所有内容,从你的数据来看,应该是´”//div[text()=“赛马\]”“´,谢谢你的帮助。非常感谢。