Javascript按钮单击在selenium webdri中不工作

2024-09-30 20:34:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用python脚本和web驱动程序自动点击javscript按钮,但是无论我如何引用元素,它似乎都不能激活javscript。以下是我想点击按钮的网站摘录:

<li>
<a href="javascript:;" data-blogid="19079" id="picture-trigger">
<i class="glyphicon glyphicon-picture light-red"></i >
<span> Picture </span >
</a >
</li >

我尝试过通过CSS选择器和XPATH进行选择,当我看到元素被选中时(在运行时它周围有一个圆点),什么都没有发生。在

我也尝试过.click()和.submit()两种方法似乎都不起作用。以下是我最近的尝试:

^{pr2}$

我想问题可能是javascript:;在从web驱动程序调用时不会像交互用户点击它时那样被触发,但我不知道如何自动单击它。在

有更多网络驱动经验的人知道为什么这不起作用吗?或者我怎么能让它工作?在

谢谢 布拉德

下面是我运行代码时看到的: Selected Element

以下是我手动单击按钮时的效果:

enter image description here


Tags: 脚本web元素data网站驱动程序lijavascript
2条回答

我认为问题在于这个网站使用的是jquery。我可以使用以下方法解决这个问题:

time.sleep(3);
mydriver.execute_script("$('.light-red').click();")

time.sleep(3);
mydriver.execute_script("$('.uploadbutton').click();")

也许有比使用更好的方法时间。睡觉但我花了太多的时间来努力让div解开隐藏,现在已经足够好了。在

希望这能帮助处于类似情况的其他人。谢谢大家的帮助。在

下面是我如何找到使用XPath单击元素的方法:

  1. 浏览按钮所在的目标页面(用 火狐)。在
  2. 右键单击按钮并选择“检查元素”。在
  3. 右键单击按钮的HTML代码并在Copy中选择XPath。在
  4. 现在您已经将XPath复制到剪贴板。在

现在你只需要打这个电话:

document.getElementByXPath("PASTE THE XPATH HERE").click()

相关问题 更多 >