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

Ubuntu更新Chrome后Selenium运行崩溃问题排查求助

问题核心原因

Chrome与ChromeDriver有强版本绑定校验规则,哪怕大版本号一致,小版本号不匹配也会直接触发启动崩溃,你看到的Chrome has crashed报错就是典型的版本不匹配表现,同时你贴的配置代码还存在参数弃用、必要配置缺失的问题,按以下步骤操作即可修复:

修复步骤
  • 第一步:核对双端精确版本
    先在服务器执行命令获取Chrome完整版本号:
    google-chrome --version
    
    输出示例:Google Chrome 102.0.5005.112,必须下载和这个版本号完全对应的ChromeDriver,同大版本下小版本号不一致(比如你现在用的102.*.61)完全无法兼容。
  • 第二步:替换正确版本的ChromeDriver
    先删除旧版本残留:
    sudo rm -f /usr/local/bin/chromedriver
    
    把下载好的对应版本ChromeDriver上传到/usr/local/bin/路径后,添加执行权限:
    sudo chmod +x /usr/local/bin/chromedriver
    
    执行chromedriver --version校验版本,确认输出的版本号和Chrome版本前三位完全一致即可。
  • 第三步:修正Selenium配置代码
    你现有代码存在无效空行、参数名弃用的问题:单独写的一行chrome_options没有任何实际作用可直接删除;高版本Selenium已经不再支持chrome_options传参,需要改为options;无GUI服务器环境还缺少无头启动参数。修正后可直接使用的代码如下:
    from selenium.webdriver.chrome.options import Options
    from selenium import webdriver
    
    chrome_options = Options()
    # 显式指定Chrome二进制路径,避免系统调用到其他位置安装的版本
    chrome_options.binary_location = "/usr/bin/google-chrome"
    chrome_options.add_argument("--no-sandbox")
    chrome_options.add_argument("--disable-dev-shm-usage")
    # 无GUI服务器环境必须加无头参数,桌面环境可注释掉这行
    chrome_options.add_argument("--headless=new")
    driver = webdriver.Chrome(options=chrome_options)
    
  • 第四步:其他异常排查
    如果版本匹配、代码修正后仍然崩溃,逐一排查以下问题:
    • 执行ldd /usr/bin/google-chrome | grep not,如果有输出not found的依赖包,直接用apt/yum安装对应缺失的系统依赖即可
    • 确认脚本运行用户对Chrome、ChromeDriver路径有读取和执行权限,权限不足也会触发进程启动后直接退出
    • 不要在启动参数里指定被占用的调试端口,避免进程启动失败

内容的提问来源于stack exchange,提问作者Supra Chan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 08:57:38