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

PyCharm运行Selenium 4 Firefox代码报ConnectionRefusedError问题

问题根因分析

触发告警与报错的直接原因

  • DeprecationWarning: firefox_profile已废弃告警:Selenium 4.x版本调整了webdriver.Firefox()的入参签名,第一个位置参数不再是geckodriver路径,而是firefox_profile。直接将驱动路径作为第一个位置参数传入时,代码会把路径字符串误识别为传入的firefox_profile配置,因此触发废弃提示。
  • ConnectionRefusedError与后续的MaxRetryError:错误传参触发的兼容兜底逻辑,在PyCharm的运行沙箱环境下无法正常执行,加上PyCharm默认启动配置不会完全继承系统终端的环境变量(尤其是通过桌面快捷方式启动的Linux版PyCharm,不会加载shell配置文件里的PATH、DISPLAY等变量),导致geckodriver要么找不到Firefox二进制文件,要么无法连接图形服务启动浏览器进程,最终驱动侧轮询本地连接端口时被拒绝。
  • 其他编辑器、系统终端运行正常的核心原因:这些环境要么直接加载了完整的系统环境变量,要么没有对Selenium的旧版传参兼容逻辑做拦截,兜底流程可以正常走完。

匹配环境信息

  • Python 3.10.4
  • Selenium 4.3.0
  • Firefox 102.0 (64-bit)
  • Gecko Driver: geckodriver-v0.31.0-linux64
  • 测试代码逻辑:导入selenium webdriver模块,指定geckodriver路径初始化Firefox驱动,访问https://www.python.org/ 输出页面标题后退出驱动

解决步骤

按顺序操作即可完全修复问题:

1. 替换为Selenium 4.x标准初始化写法,消除传参告警

废弃直接传驱动路径的旧写法,改用Service+Options的标准传参方式,从根源避免参数识别错误,参考代码:

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

# 替换为当前设备上geckodriver的实际绝对路径
GECKO_DRIVER_PATH = "/path/to/your/geckodriver"

firefox_service = Service(executable_path=GECKO_DRIVER_PATH)
firefox_options = Options()
# 无头模式等自定义启动参数可通过firefox_options.add_argument()添加

driver = webdriver.Firefox(service=firefox_service, options=firefox_options)
driver.get("https://www.python.org/")
print(driver.title)
driver.quit()

注意:该标准写法适配Selenium 4.x全版本,稳定性远高于依赖兼容逻辑的旧写法,无需为了适配旧代码降级Selenium版本。

2. 调整PyCharm运行配置,解决环境变量缺失问题

  • 打开PyCharm右上角运行配置菜单,选择Edit Configurations,找到当前运行的脚本配置项:
    • 勾选Emulate terminal in output console选项,让运行控制台模拟系统终端环境
    • 确认选择的Python解释器和系统终端中能正常运行代码的解释器完全一致,避免虚拟环境依赖缺失
  • 如果是Linux环境通过桌面快捷方式启动PyCharm,需要补充图形服务变量:
    • 在系统终端执行echo $DISPLAY拿到返回值(通常为:0)
    • 回到运行配置页的Environment variables项,新增变量DISPLAY,值为刚才终端拿到的返回值,保存配置
  • 如果上述配置后仍报错,直接关闭当前PyCharm,从系统终端执行pycharm.sh命令启动PyCharm即可,该启动方式会完整加载所有系统环境变量,不会出现变量缺失问题。

内容的提问来源于stack exchange,提问作者Kimi Lao

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 14:27:17