【问题标题】:Selenium click on a element without href that shows after clickingSelenium 单击没有 href 的元素,单击后显示
【发布时间】:2022-01-05 19:54:00
【问题描述】:

我正在尝试从网站上的“a”元素获取 href 链接,问题是它没有“href”,所以 selenium 给了我“元素不可点击”。

HTML 代码如下所示

<a class="download-file__link"
download="" 
data-masked="2532466d65646961253246636174616c6f67253246646f776e6c6f616473253246646174656e626c6174745f65787465726e253246322532463425324663253246612532463234636161633261393736372e706466" 
rel="nofollow">

当我在浏览器中单击它时,它会显示 href。

<a class="download-file__link" 
download="" 
data-masked="2532466d65646961253246636174616c6f67253246646f776e6c6f616473253246646174656e626c6174745f65787465726e253246322532463425324663253246612532463234636161633261393736372e706466" 
rel="nofollow"
href="/media/catalog/downloads/datenblatt_extern/2/4/c/a/24caac2a9767.pdf">

如何使用 Selenium 执行此操作,以便之后显示 href?

我花了大约 5 个小时寻找解决方案,但没有找到任何解决方案。

你能帮帮我吗?

谢谢

【问题讨论】:

  • 当我在浏览器中单击它时,它会显示 href:为什么你不能对 Selenium 做同样的事情?
  • @DebanjanB 听起来 Selenium 决定该元素不可点击,这是它有时会做的事情。
  • element is not clickable 似乎不是问题,获得href 是OP 寻找的。让我们在Selenium room 讨论这个问题。

标签: html selenium href


【解决方案1】:

您可以在这里尝试两种方法。

方法 1:动作链

使用ActionChains 来单击偏移量为0,0 的元素获取元素的位置,然后单击这些坐标。然后检查href。

方法 2:Javascript

编写一些Javascript代码来找到元素并点击它;它应该忽略它是否认为该元素可以被点击并尝试点击它。

您需要查找 Selenium 绑定的文档以找到 executeScript 方法,然后像这样传递一些 Javascript:

"$('#download-file__link').click()"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-17
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    • 2019-01-13
    • 1970-01-01
    • 2016-02-19
    • 2021-04-25
    相关资源
    最近更新 更多