gpt4 book ai didi

javascript - 为什么无法在 GhostDriver/PhantomJSDriver 中禁用 JavaScript?

转载 作者:行者123 更新时间:2023-11-29 19:30:40 24 4
gpt4 key购买 nike

我想在特定页面的 PhantomJSDriver 中禁用 JavaScript,但是 this link here说这是不可能的,因为“整个 GhostDriver 将变得不可用”。

谁能解释一下,我才 ​​5 岁,为什么会这样?

我是否有任何选项可以以某种方式阻止 PhantomJSDriver 在页面上执行 JavaScript?

最佳答案

GhostDriver 是用 JavaScript 编写的,它使用 PhantomJS API将 WebDriver 有线协议(protocol)命令转换为 native PhantomJS 命令/调用。

PhantomJS 有两个上下文:驱动浏览器的外部(虚拟)上下文和执行页面 JavaScript 的内部(页面)上下文。如果您在 PhantomJS 中禁用 JavaScript,则只会禁用页面上下文。您仍然可以做一些事情,但是您不能再使用 page.evaluate*() 了,这是进入页面上下文的大门。如果仔细查看 PhantomJS API,您会发现没有可用于访问 DOM 的函数。这意味着您无法找到元素,无法查询元素的文本,无法更改元素,也无法知道点击元素的位置。

您所能做的就是创建屏幕截图 (page.render()) 以及盲目地单击和键入 (page.sendEvent())。这不足以让 WebDriver 协议(protocol)工作。

关于javascript - 为什么无法在 GhostDriver/PhantomJSDriver 中禁用 JavaScript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27785320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com