如何单击PhantomJS中的元素?
page.evaluate(function() {
document.getElementById('idButtonSpan').click();
});
这给我一个错误“未定义不是函数…”
如果我代替
return document.getElementById('idButtonSpan');
然后打印
然后打印[object object],因此该元素确实存在。
该元素充当按钮,但实际上只是一个span元素,而不是Submit输入。
我可以单击此按钮来与Casper一起使用,但是Casper还有其他限制,所以我回到PhantomJS。
.click()
不是标准的。您需要创建一个事件并调度它:
function click(el){
var ev = document.createEvent("MouseEvent");
ev.initMouseEvent(
"click",
true /* bubble */, true /* cancelable */,
window, null,
0, 0, 0, 0, /* coordinates */
false, false, false, false, /* modifier keys */
0 /*left*/, null
);
el.dispatchEvent(ev);
}
我有一个问题: 下面是在Firefox中点击网站链接的代码。它工作。点击。但是PhantomJS中的相同代码会进入页面,但不会点击。请帮忙解决问题。先谢了
用我在selenium的初学者知识,我试图找到点击元素,打开链接。这些项目的链接没有href。我如何执行点击正确的元素打开链接。 我正在使用python、selenium、chrome web驱动程序、BeautifulSoup。所有库都已更新。 下面是示例html片段,其中有一个我需要使用selenium点击的标题。请让我知道,如果你需要更多的html源。此代码来自仅限“登录”的网站。
在尝试抓取一个网站时,我遇到了以下错误:“消息:元素点击拦截:元素img src=”/矩阵/图像/图标/16/我nfo.png边界=”0” 这个问题似乎来自我的链接列表(lst_of_links)。 我发现的大多数解决方案都需要添加,然而,我不清楚如何使用元素列表而不是单个元素来实现这一点。 欢迎思想。
我在chromedriver上运行测试时出错,因为它在FirefoxDriver上运行良好: WebDriverException:未知错误:元素在点(1270,449)处不可单击。其他元素将接收点击:(会话信息:Chrome=44.0.2403.157)(驱动程序信息:ChromeDriver=2.17.340124 知道怎么了吗?我正在使用最新的ChromeDriver。
问题内容: 我正在尝试使用基于selenium的Katalon Studio进行一些测试。在我的一项测试中,我必须在文本区域内编写。问题是我得到以下错误: 实际上,我的元素放置在其他可能隐藏它的diva里面,但是如何使click事件击中我的textarea? 问题答案: 可能是由于不同的因素造成的。您可以通过以下任一过程解决它们: 由于存在JavaScript或AJAX调用而无法单击元素 尝试使用
问题内容: 这个问题是由于总的中间在试图忠实于什么实际用户一样。所以我在想这种方法: 首先,而不是查找元素,然后单击: 编写单击以下内容的通用函数: 然后,当发生此异常时,请尝试以其他方式单击。 您认为这种方法可行吗? 问题答案: 请仔细阅读此堆栈溢出答案以更好地理解。 更新 我们也可以尝试 也请尝试如下 尝试使用Y坐标单击 尝试使用X坐标单击 希望这对您有帮助