在 selenium python 中通过 href 查找链接

Posted

技术标签:

【中文标题】在 selenium python 中通过 href 查找链接【英文标题】:Find a link by href in selenium python 【发布时间】:2020-07-18 00:20:43 【问题描述】:

让我们以 spotify 为例,因为我现在正在听音乐。

我想在下面的代码中获取href标签中包含的文字。

<a data-testid="nowplaying-track-link" href="/album/3xIwVbGJuAcovYIhzbLO3J">Toosie Slide</a>

我想要的是获取“/album/3xIwVbGJuAcovYIhzbLO3J”,或者如果这不可能,获取“Toosie Slide”以便将其存储在变量中以将其与常量进行比较。

Spotify(和许多其他网站)的困难在于这个 href 标签在网页上多次出现。所以我只想获取"nowplaying-track-link" 中包含的链接,即data-testid

在那里,我希望我很清楚。

PS:我已经知道诸如 driver.find_element_by_xpath 之类的命令...但是在这种情况下我不能使用它们...

【问题讨论】:

【参考方案1】:

我不确定您对类型命令的含义以及无法使用它们,但这是您获得所需信息的方式:

element = driver.find_element_by_css_selector('[data-testid="nowplaying-track-link"]')

href = element.get_attribute('href')

element_text = element.text

如果你想把链接放在一起,你可以这样做:

link = driver.current_url + href

【讨论】:

以上是关于在 selenium python 中通过 href 查找链接的主要内容,如果未能解决你的问题,请参考以下文章

如何使用python在selenium中通过其id名称的一部分查找元素

python中通过selenium简单操作及元素定位

在 PHP Selenium 中通过链接查找元素

在 Visual Studio 中通过 C# (Selenium) 自动登录 Gmail

如何在WebElement中通过xpath查找子元素

在 selenium 中通过...(."<table class = "table table-bordered table-condensed table-striped