Ubuntu22.04更新后无法运行Selenium Firefox浏览器求助
解决Ubuntu 22.04更新后Selenium无法启动Firefox的问题
问题核心
系统更新后,Selenium调用Firefox时错误指向了PyCharm Snap包内不存在的Firefox路径,导致进程以状态码127退出,日志明确显示找不到/snap/pycharm-community/302/usr/lib/firefox/firefox文件。
修复方案
1. 显式指定Firefox二进制文件路径
在Selenium代码中直接设置Firefox的实际安装路径,覆盖错误的默认路径:
from selenium import webdriver from selenium.webdriver.firefox.options import Options from selenium.webdriver.firefox.service import Service options = Options() # 替换为Snap安装的Firefox真实路径 options.binary_location = "/snap/firefox/current/usr/lib/firefox/firefox" driver = webdriver.Firefox(options=options, service=Service())
2. 验证路径有效性
先在终端执行命令确认路径是否正确:
/snap/firefox/current/usr/lib/firefox/firefox --version
如果能正常输出版本号,说明路径无误;若报错,用which firefox命令查找Firefox的实际可执行路径,替换到代码中。
3. 匹配geckodriver与Firefox版本
确保geckodriver版本和当前Firefox版本兼容:
- 查看Firefox版本:
firefox --version - 下载对应版本的geckodriver,解压后放到
/usr/local/bin/,并赋予执行权限:
chmod +x /usr/local/bin/geckodriver
4. 检查Snap权限(可选)
若仍有问题,确认PyCharm Snap包是否有权限访问桌面资源:
snap connections pycharm-community | grep desktop
如果desktop或desktop-launch未连接,执行以下命令补全权限:
snap connect pycharm-community:desktop :desktop snap connect pycharm-community:desktop-launch :desktop-launch
内容的提问来源于stack exchange,提问作者AlexQA
相关产品推荐
相关产品推荐

