You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS下Python启动Firefox-Selenium提示文件找不到问题求助

解决MacOS下Selenium启动Firefox找不到文件的问题

这个问题我碰到过好多次了——本质是Selenium没法直接和Firefox通信,得靠GeckoDriver这个“中间件”,你只装了Firefox和Selenium,但系统找不到驱动文件,所以才会抛出找不到文件的报错。下面一步步给你解决:

1. 下载匹配版本的GeckoDriver

GeckoDriver的版本必须和你的Firefox版本兼容(新版Firefox对应新版GeckoDriver就行,一般不会有兼容问题):

  • 去Mozilla官方提供的GeckoDriver下载页面,选择对应MacOS架构的压缩包(M1/M2芯片选arm64版本,Intel芯片选x64版本)

2. 配置GeckoDriver到系统PATH

解压下载的压缩包,会得到一个名为geckodriver的可执行文件,接下来把它放到系统默认能识别的路径里:

  1. 打开终端,进入解压后的文件目录(比如你下载到Downloads文件夹,就执行cd ~/Downloads)
  2. 执行命令把驱动移到/usr/local/bin(这个目录默认在系统PATH里,全局可用):
    mv geckodriver /usr/local/bin/
    
  3. 给驱动添加执行权限(如果需要的话):
    chmod +x /usr/local/bin/geckodriver
    

3. 验证驱动是否配置成功

在终端输入以下命令,如果能正常显示GeckoDriver的版本号,说明配置没问题:

geckodriver --version

4. 测试你的代码

现在再运行你原来的代码:

from selenium import webdriver
browser = webdriver.Firefox()

应该就能正常启动Firefox浏览器了。

可选:不配置PATH,直接在代码里指定驱动路径

如果你不想把GeckoDriver放到系统PATH里,也可以在代码里直接指定驱动文件的路径:

from selenium import webdriver
from selenium.webdriver.firefox.service import Service

# 替换成你实际的geckodriver文件路径
service = Service('/Users/你的用户名/Downloads/geckodriver')
browser = webdriver.Firefox(service=service)

注意事项

  • 一定要确保GeckoDriver和Firefox版本兼容,如果启动还是报错,可以检查两者的版本对应关系
  • M1/M2芯片的Mac别选错架构,否则驱动会无法运行

内容的提问来源于stack exchange,提问作者Mr. Blue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:20:07