mac os+selenium2+Firefox驱动+python3

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mac os+selenium2+Firefox驱动+python3相关的知识,希望对你有一定的参考价值。

此文章建立在之前写的chrome+selenium+Python环境配置的基础上,链接http://blog.csdn.net/zxy987872674/article/details/53082896 
之前写selenium脚本,都用的chrome浏览器,看很多人说Firefox不需要额外安装驱动来适配selenium,以为可以直接运行,但是今天安装Selenium IDE环境时,想用下Firefox浏览器,就写了段脚本测试一下:

from selenium import webdriver
import time

driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
time.sleep(3)
driver.quit()

结果提示:

WebDriverException: Message: ‘geckodriver‘ executable needs to be in PATH. 

参考chrome环境安装过程,进入官网: 
http://docs.seleniumhq.org/download/选择对应系统的浏览器驱动,我下载的是geckodriver-v0.11.1-macos.tar.gz,将解压后的geckodriver移动到/usr/local/bin目录下,重新运行脚本;

    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: Missing ‘marionetteProtocol‘ field in handshake

 

具体报错原因不详,将本机的Firefox升级到Firefox 49.0.2,重新运行脚本,可以正常运行。



以上是关于mac os+selenium2+Firefox驱动+python3的主要内容,如果未能解决你的问题,请参考以下文章

selenium+python在mac环境上的搭建

selenium+python在mac环境上的搭建转载

Mac系统上,Firefox和Selenium不兼容的情况

Firefox 7.0.1 - Mac OS X 10.6.8 - 图形问题

在 Mac OS X 上的 Firefox 中强制可见滚动条

上传表单在 Mac OS X 的 Firefox 3 中不起作用?