【问题标题】:'geckodriver' executable needs to be in PATH using GeckoDriver and Firefox through Selenium'geckodriver' 可执行文件需要通过 Selenium 使用 GeckoDriver 和 Firefox 在 PATH 中
【发布时间】:2021-04-15 21:28:30
【问题描述】:
我非常熟悉将 chromedriver 用于 selenium,我现在尝试使用 geckdriver,但由于某种原因,我不断收到错误 'geckodriver' executable needs to be in PATH.
我按照Selenium using Python - Geckodriver executable needs to be in PATH中的步骤操作
但是这些方法似乎都不起作用,是我遗漏了什么吗?
这是我的代码
from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
binary = FirefoxBinary("C:\\Users\\ojadi\\Downloads\\geckodriver-v0.28.0-win64\\geckodriver.exe")
browser = webdriver.Firefox(firefox_binary=binary)
【问题讨论】:
标签:
python
selenium
firefox
geckodriver
selenium-firefoxdriver
【解决方案1】:
您可以在系统中的任何位置下载和存储GeckoDriver 可执行文件,您需要通过属性binary_location 传递firefox 二进制文件的绝对路径,如下所示:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
options = Options()
options.binary_location = r'C:\Program Files\Mozilla Firefox\firefox.exe'
driver = webdriver.Firefox(firefox_options=options, executable_path=r'C:\Users\\ojadi\Downloads\geckodriver-v0.28.0-win64\geckodriver.exe')
driver.get('http://google.com/')
【解决方案2】:
安装指南中经常忽略的两个设置:
- 在您的配置文件中包含 geckodriver 可执行文件
- 启用 geckodriver 可执行文件
MAC:将 geckodriver 添加到您的个人资料:
- 打开您的 zsh 配置文件:
open ~/.zshrc
- 将以下代码行添加到您的个人资料中:
export PATH=$PATH:/usr/local/bin/geckodriver (假设这是您的 geckodriver 的位置,如果不是,请替换为位置。)
- 保存并关闭。
- 重新加载您的个人资料(或重新启动终端):
source ~/.zshrc
MAC:使 geckodriver 可执行:
-
sudo chmod +x /usr/local/bin/geckodriver(或 geckodriver 可执行文件的路径)