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

在GitHub Codespace运行Python Selenium脚本时Chromedriver报错

解决GitHub Codespace中Selenium ChromeDriver意外退出的问题

问题分析

出现Service chromedriver unexpectedly exited. Status code was: 1通常和版本不匹配、代码写法过时或权限/路径配置错误有关。

解决方案

1. 检查Chromium与ChromeDriver版本一致性

在Codespace终端执行以下命令,确认两者版本号是否完全一致:

chromium-browser --version
chromedriver --version

如果版本不一致,需安装与Chromium对应版本的ChromeDriver替换现有文件。

2. 修正Selenium代码写法(适配4.x版本)

旧版初始化Driver的方式已被弃用,改用Service类管理驱动服务,并明确指定Chromium二进制路径:

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service

# 配置Chrome选项
options = webdriver.ChromeOptions()
options.add_argument('--headless=new')  # 新版无头模式,兼容性更优
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--disable-gpu')
options.binary_location = '/usr/bin/chromium-browser'  # 指定Chromium安装路径

# 初始化驱动服务并创建Driver实例
service = Service('/usr/bin/chromedriver')
driver = webdriver.Chrome(service=service, options=options)

# 示例操作
try:
    driver.get("https://www.google.com")
    print("页面标题:", driver.title)
    time.sleep(2)
finally:
    driver.quit()  # 确保退出驱动释放资源

3. 确认ChromeDriver执行权限

若驱动文件无执行权限会导致启动失败,执行以下命令检查并修复:

# 查看权限状态
ls -l /usr/bin/chromedriver
# 添加执行权限(仅当需要时)
sudo chmod +x /usr/bin/chromedriver

4. 使用webdriver-manager自动管理驱动(推荐)

通过webdriver-manager可自动匹配并下载对应版本的ChromeDriver,彻底规避版本不匹配问题:

  1. 安装依赖包:
pip install webdriver-manager
  1. 简化后的代码:
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument('--headless=new')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.binary_location = '/usr/bin/chromium-browser'

# 自动下载匹配版本的ChromeDriver
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)

try:
    driver.get("https://www.google.com")
    print("页面标题:", driver.title)
    time.sleep(2)
finally:
    driver.quit()

内容的提问来源于stack exchange,提问作者Andrei Zorin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 02:40:23