解决webdriver调用Firefox()报错 (mac python3)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决webdriver调用Firefox()报错 (mac python3)相关的知识,希望对你有一定的参考价值。

如何解决selenium webdriver.Firefox()找不到geckodriver文件
先声明:python IDLE我找不到能使用环境变量的设置,如你有更好的方法,请留言,多谢了。


平台:macOS       软件 python自带IDLE 版本python3.6
原材料:先在搜索引擎自行搜索geckodriver的最新版本下载,解压后将文件放在/usr/local/bin/中

以下:

错误提示:
selenium.common.exceptions.WebDriverException: Message: ‘geckodriver‘ executable needs to be in PATH.



Python IDLE
有很多很奇怪的东西,比如当找不到指定文件的时候,不会去系统环境变量的路径里面找,所以用很多api库函数时,他们本来会赋予的路径初始值会毫无作用,要重新在idle引用时赋值,否则会抛出异常。如:

from selenium import webdriver
browser = webdriver.Firefox()


//里面有个参数的默认初始值executable_path=geckodriver

即当mac terminalecho $PATH中的系统环境变量路径中能找到geckodriver可执行程序就可以了,pycharm可以做到不用改动初始值即可正常运行,

python IDLE会抛出异常,找不到geckodriver,必须重新赋值,用该可执行程序的绝对地址来赋值:

browser = webdriver.Firefox(executable_path=
’
/usr/local/bin/geckodriver
’
)


方可正常执行,或者你直接找到selenium包中的webdriver.py把里面的初始值改为上面这个绝对地址,这样也可以达到pythonIDLE也能不赋值就能正常执行。


本文出自 “antidarkness's blog” 博客,请务必保留此出处http://antidarkness.blog.51cto.com/6146867/1974695

以上是关于解决webdriver调用Firefox()报错 (mac python3)的主要内容,如果未能解决你的问题,请参考以下文章

Python webdriver调用Chrome报错

selenium的安装报错和解决

python中使用selenium调用Firefox缺少geckodriver解决方法

Python打开火狐浏览器报错,下面是报错信息

selenium3.7版本无法new WebDriver Firefox()解决方法

python中用selenium调Firefox报错问题