Python中使用Marionette / Selenium的多个Firefox实例

时间:2016-06-16 00:07:31

标签: python selenium firefox selenium-webdriver firefox-marionette

我想在Python中使用Selenium打开多个Firefox实例并并行运行它们。更新到Firefox 47.0之后,我们现在{Firefox {Selenium} have to use the Marionette WebDriver了。在使用Marionette之前,我可以通过多次调用webdriver.Firefox()轻松地在Python / Selenium中创建新的Firefox实例。切换到Marionette后,只有第一个实例工作。如果打开第二个实例,我收到以下错误:

  

WebDriverException:消息:无法解码来自木偶的响应

发出错误后,该实例会死亡,而最近调用的实例会继续存在。环顾四周,似乎问题在于Marionette使用的端口,新实例一直试图击中原始端口所使用的端口。我看到有一种方法可以改变going through prefs.js and creating separate profiles使用的端口。但是,我想知道是否有办法完全在Python中完成它(类似于这个Java example)。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

此处报告了类似的问题: https://github.com/mozilla/geckodriver/issues/1453

基本上,您需要使用调试firefox构建+跟踪木偶日志记录来运行,以获取更多详细信息。也许您也遇到了同样的情况。