【问题标题】:Get the link inside href selenium python获取href selenium python中的链接
【发布时间】:2021-10-05 14:51:36
【问题描述】:

我正在尝试使用 python 和 selenium 获取链接 href。 链接地址为<a target="_blank" href="https://click.discord.com/ls/click?upn=RANDOMNUMBERSANDLETTERS" style="text-decoration:none;line-height:100%;background:#5865f2;color:white;font-family:Ubuntu, Helvetica, Arial, sans-serif;font-size:15px;font-weight:normal;text-transform:none;margin:0px;"> Verify Email </a> 我想获得完整的不和谐链接,但我不知道怎么做,我尝试寻找答案,但所有人都说找不到元素。

【问题讨论】:

  • 如果您提供额外的周边 HTML,它可能有助于形成替代答案的基础。

标签: python python-3.x selenium selenium-chromedriver


【解决方案1】:

您可以使用 xpath

拥有一个 web 元素
//a[contains(text(),'Verify Email')]

和电话

get_attribute('href')

示例代码:

link = driver.find_element_by_xpath("//a[contains(text(),'Verify Email')]").get_attribute('href')
print(link)

【讨论】:

  • 这行得通,但还有其他方法可以做同样的事情吗?
  • @Jarvn 你不喜欢这个答案的哪一部分?
  • 好吧,我尝试了代码,我得到了网站的 url 而不是 href 中的值
  • @Jarvn :那你为什么评论这个That worked, but is there any other way to do the same thing? ?使用 get 属性方法获取网站 url 的可能性很小,有不同的方法可以获取浏览器 url。
【解决方案2】:

试试这个:

ele=driver.find_element_by_xpath("//a[contains(text(),'Verify Email')]")
ele.get_attribute('href')

print(ele)

【讨论】:

    【解决方案3】:

    您也可以使用 css 定位器,因为 xpath 通常应该作为最后的手段使用(它们更容易破坏并弄乱您的浏览器自动化,它们只是更脆弱)。作为一个非常基本的示例 css=#email (或任何 id 被调用),如果您想使用带有 id 的标签,则语法是一个示例,来自您在上面发布的内容是 css=a[href='linkText'] .

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-03
      • 2020-02-28
      • 1970-01-01
      • 2016-04-18
      • 2020-09-04
      • 1970-01-01
      相关资源
      最近更新 更多