用python自动化firefox? [关闭]
Posted
技术标签:
【中文标题】用python自动化firefox? [关闭]【英文标题】:Automate firefox with python? [closed] 【发布时间】:2010-09-08 18:39:43 【问题描述】:一直在网上搜寻诸如 firewatir 之类的东西,但对于 python。我正在尝试在 linux 上自动化 firefox。有什么建议吗?
【问题讨论】:
【参考方案1】:你可以试试selenium。
【讨论】:
【参考方案2】:PyXPCOM extension 是一种可能性。
但是看看 firewatir 提供了什么,我不得不对斜纹布提出第二个建议。它基于mechanize,在这种情况下也可能有用。
【讨论】:
机械化最终给了我最多的功能......谢谢 刚看到这个不得不说PyXPCOM看起来真的很老很脏,可以这么说,它至少和2001年一样古老,而且很难找到如何使用它,机械化是可以的但有一些限制,例如无法处理 javascript,也无法自动下载浏览器在页面加载时下载的正常内容(例如 css、图像等) PyXPCOM 插件的链接已损坏。【参考方案3】:我使用Selenium RC。我所有的测试都是用 Python 编写的,并使用测试套件运行。
一件小事是你要么必须手动启动 selenium 并将你的测试指向它,要么从需要一点编码的测试套件启动 selenium。但这是可行的。
总的来说,我对这个解决方案非常满意。
【讨论】:
Selenium Server 运行还需要 Java 吗? 是的,因为 Selenium 是用 Java 编写的。【参考方案4】:看看twill能不能帮到你。它可以用作命令行工具或python库。
【讨论】:
【参考方案5】:我建议您使用 Selenium 而不是 Mechanize/Twill,因为 Mechanize 在处理 Javascript 时会失败。
【讨论】:
【参考方案6】:Firefox 选择的语言是 Javascript。除非您有需要 Python 的特定要求,否则我建议您使用它。
【讨论】:
我认为 javascript 不适合这一点,它无法真正与 python 进行自动化等比较,但我想如果你绝对需要你可以让 javascript 与你的 python 脚本交互 【参考方案7】:在 Firefox 中安装 Mozlab 并启用 telnet 服务器,然后打开一个套接字。
【讨论】:
【参考方案8】:许多命令行工具没有 javascript 解释器,因此不支持 web 2.0 功能。 juicedpyshell 基于 PyXPCOMext 的 PyShell 示例。它在浏览器“内部”为您提供了一个 python shell 窗口,并简化了对您正在浏览的 DOM 以及 shell 窗口本身的访问(因此您可以添加 GUI 元素作为自动化脚本的一部分)。但它是一个新项目,因此可能不如上述某些项目功能齐全。
【讨论】:
看起来不错,但遗憾的是开发似乎已经停止,因为最后一个版本比您的帖子旧。以上是关于用python自动化firefox? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
selenium自动化.........................................搭建环境
Python+Selenium基础篇之3-打开和关闭IE/Chrome浏览器
Selenium2+python自动化18-加载Firefox配置