Python 错误 WebDriverException: Message: Geckodriver Executable Needs to Be in PATH
Python 中的 selenium 包可以在 Web 浏览器上自动执行任务。 使用他们的网络驱动程序,我们可以使用不同的网络浏览器,如 Google Chrome、Firefox 等。
本教程将讨论Python中错误 Message: 'geckodriver' executable needs to be in PATH。
geckodriver 是 Mozilla 开发的浏览器引擎,充当 Selenium 和 Firefox 浏览器之间的链接。 当驱动程序未正确安装或未正确指定其路径时,会发生此错误。
请参阅下面的代码。
from selenium import webdriver
browser = webdriver.Firefox()
输出:
WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
现在让我们讨论解决此错误的不同方法。
使用 geckodriver.exe 文件并将其添加到系统路径
Selenium 尝试从系统环境变量 PATH 中识别驱动程序可执行文件。 我们可以将 geckodriver 的可执行路径添加到这个变量中。
首先,我们必须从 Mozilla 官方网站下载驱动程序的可执行文件。 我们需要将包含此可执行文件的目录路径添加到前面讨论的 PATH 变量中。
PATH 变量可以在环境变量菜单下找到。 我们需要右键单击“这台电脑”图标,转到“属性”,然后选择“高级设置”选项以获取此菜单。
Linux用户可以将可执行文件直接复制到/usr/local/bin目录下。
在 webdriver.Firefox() 函数中使用 executable_path 参数
我们使用 webdriver.Firefox()
构造函数来创建可以打开浏览器窗口并执行自动化任务的 Driver 对象。 我们可以使用 executable_path 参数在此函数中指定 geckodriver 可执行文件的路径。
例如:
from selenium import webdriver
driver = webdriver.Firefox(executable_path=r'user\jiyik\geckodriver.exe')
Mac OS 用户也可以使用自制软件安装 geckodriver。 可以使用以下命令。
brew install geckodriver
安装后,显示驱动程序的路径。 我们可以复制这个路径,粘贴到Finder应用程序中,然后点击Go to Folder。
这将返回可在 executable_path 参数中使用的驱动程序的完整路径。
使用 webdriver-manager 模块
引入 webdriver-manager 模块是为了减轻管理不同浏览器的网络驱动程序的负担。
我们可以使用 GeckoDriverManager().install()
函数来安装和使用 geckodriver 的可执行文件。 这需要在前面讨论的 executable_path 参数中指定。
请参阅下面的代码。
from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager
driver_object = webdriver.Firefox(executable_path=GeckoDriverManager().install())
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串