【问题标题】:Why can't I get the href attribute of an element where as I can click on it using Selenium为什么我不能使用 Selenium 点击它的元素的 href 属性
【发布时间】:2021-03-22 18:09:32
【问题描述】:

我看到很多人有相反的问题,但我的是这样的:

我有这个网络元素,当我使用element.click() 时,它会将我重定向到一个网站(该元素有一个链接)

当我使用 element.get_attribute('href') 时,我得到了 None,我什至尝试使用 javascript 检查元素的属性,但它只有一个类属性。

有没有办法让我在不点击元素的情况下获取此链接?

通过对网页元素的 chrome 检查,我们有:

<div "element.class">
    <a href='link_that_i_want'>

【问题讨论】:

  • 你没有为这个页面添加 URL,所以我无法检查它,但点击可能会运行 JavaScript 代码,href 可以在 JavaScript 代码中 - 所以它不必是属性在元素中。

标签: python selenium selenium-webdriver onclick href


【解决方案1】:

href属性

href 属性指定链接指向的页面的 URL。

例子:

<a href="https://www.w3schools.com">Visit W3Schools</a>

href 属性可用于以下元素:

  • &lt;a&gt;
  • &lt;area&gt;
  • &lt;base&gt;
  • &lt;link&gt;

onclick事件属性

onclick 事件属性在单击按钮时执行JavaScriptonclick 属性在鼠标单击元素时触发。

例子:

<button onclick="myFunction()">Click me</button>

结论

可能需要的元素具有 onclick 属性而不是 href 属性。

【讨论】:

  • 让我得到那个“a”元素我应该使用“find_element_by_name”的哪个变体?
  • @hellofriends 如果是&lt;a&gt;标签,优先顺序应该是,linkTextpartialLinkTextCss 然后是 XPath.
猜你喜欢
  • 2013-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-01
  • 1970-01-01
  • 2022-11-28
  • 2016-01-18
  • 2020-11-10
相关资源
最近更新 更多