使用Selenium Driver+PhantomJS注入JavaScript脚本,并在Python中正确处理重定向
Injecting a JavaScript script using Selenium Driver + PhantomJS and handling the redirection correctly in Python
我的问题是:
我正在开发一个连接到URL的Python脚本,并使用selenium驱动程序注入一个Javascript文件,在该文件执行后,重定向当前页面。这一切都是用selenium处理Firefox完成的:
driver = webdriver.Firefox();
,但当我尝试使用PhantomJS作为浏览器时,因为它没有任何图形界面:
driver = webdriver.PhantomJS();
我无法正确处理响应。仍然没有发现驱动程序是否没有正确注入脚本,或者是否是响应处理问题。如果有人有什么想法的话,很高兴听到。
我在另一个问题上发布了这篇文章,但我认为这会有所帮助:
在我自己解决了同样的困境后,我可以全心全意地建议将您喜欢的Selenium网络工具包(我的是Chrome(与XVFB结合使用。
XVFB允许您随意运行Firefox、Chrome等浏览器,基本上消除了使用PhantomJS固有的所有缺陷。虽然这绝对是一个很棒的部分,但它的内部工作有时往往会有不同的交互(例如,我遇到了一些问题,无法像在任何浏览器中那样从一个元素切换到另一个元素(。如果你正在使用Jenkins,有一个非常棒的插件,只需点击一个按钮。否则,我绝对建议你看看这个。
幻影是一个真正的麻烦,所以它绝对值得绕过它:(
希望这能有所帮助!
相关文章:
- 使用clickToggle并在单击另一个元素时关闭元素
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 使用jQuery动态添加表并在其中动态添加行
- 遍历类元素数组,并在jquery中选择同级元素
- 如何缩短MongoDB ObjectId并在Mongoose模式中使用它
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- ng消息仅在触摸时显示错误,并在错误的初始显示上转换
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 如何使用JS禁用表行,并在MYSQL中插入所选选项
- Node.js上的WebSocket,并在所有连接的客户端之间共享消息
- OpenLayers在悬停时高亮显示功能,并在单击时选择
- 将循环中的两个文本框相乘,并在第三个文本框上显示结果
- 运行 python 脚本并在网站上显示打印值
- 用javascript调用python函数,并在网页上显示返回的字符串
- 使用 Python 加密并在 jQuery/Javascript 中解密
- 如何存储JQuery提交的变量,并在Python/Django项目的后期重用它
- 如何从多个JSON对象中选择一个并在python中导航其层次结构
- 使用Selenium Driver+PhantomJS注入JavaScript脚本,并在Python中正确处理重定向
- 我如何将javascript源文件插入我的金字塔python应用程序并在我的模板中使用它们