2009-06-19 69 views
5

我试过Pamie浏览器自动化的Internet Explorer资源库。它的接口使用IE的COM,漂亮整洁:浏览器自动化:使用PyXPCOM的Python + Firefox

import PAM30 
ie = PAM30.PAMIE("http://user-agent-string.info/") 
ie.clickButton("Analyze my UA") 

现在我想做的使用PyXPCOM与火狐类似的灵活性同样的事情。我怎样才能做到这一点?你能提供示例代码吗?

更新:请只pyxpcom

+3

寒意花花公子。有很多人通过假设他们已经知道答案开始了一个问题。有时候最好的解决方案不是他们关注的问题。既然你没有提到为什么你需要PyXPCOM而不是其他许多自动化选项,那么提供你可能没有考虑过的替代品并没有什么坏处。迟早某个具有PyXPCOM经验的人会给你你需要的答案,如果不是,那么其他答案无关紧要。至少他们可以解决其他用户遇到的问题,这些用户偶然发现搜索“浏览器自动化”的问题。 – SpliFF 2009-06-24 17:43:11

回答

10

我已经用firefox的webdriver。我对此非常满意。

至于代码示例,this将帮助您入门。

2

如果你正在测试一个Web应用程序,并希望编写Python做到这一点,看看Selenium RC这样你就可以使用相同的API对所有的浏览器。

4

我对PyXPCOM的理解是,它意在让你创建和访问XPCOM组件,而不是控制现有的组件。你可能不能够做到这一点使用PyXPCOM可言,每马克哈蒙德,原作者:

It simply isn't what XPCOM is trying to do. I'm not sure if Mozilla/Firefox now has or is developing a COM or any other "automation" mechanism.

和:

If by "automating", you mean "controlling Mozilla via a remote process via xpcom", then as far as I know, that is not possible

你可能不想看看之前建议的Webdriver项目WindmillMozMill,两者都支持通过Python自动化Firefox/Gecko/XULRunner。