Replit平台上Undetected Chromedriver持续崩溃问题求助
解决Replit上Undetected Chromedriver启动失败(状态码127)的问题
我之前在Replit平台上也碰到过完全一样的问题,状态码127的报错本质上是驱动无法找到运行所需的依赖,或者驱动与系统里的Chrome/Chromium版本不兼容。给你几个亲测有效的解决步骤:
1. 先安装Chrome运行必需的系统依赖
Replit的容器环境默认没有预装全Chrome的依赖库,直接运行驱动会启动失败。打开Replit的Shell,执行以下命令:
sudo apt-get update sudo apt-get install -y chromium-browser libnss3 libgconf-2-4 libxss1 libappindicator1 libindicator7
这些库是Chrome/Chromium运行的基础,安装完成后再尝试运行代码。
2. 手动指定系统里的Chromium路径
Undetected Chromedriver默认可能找不到Replit里的Chrome二进制文件,我们可以手动指定路径来避免自动下载不兼容的驱动。修改你的代码如下:
import undetected_chromedriver as uc from selenium.webdriver.chrome.options import Options # 配置Chrome选项 options = Options() options.binary_location = "/usr/bin/chromium-browser" # Replit中Chromium的默认路径 # 初始化驱动 driver = uc.Chrome(options=options) driver.get('https://google.com')
3. 强制匹配驱动与Chrome版本(如果步骤2无效)
如果还是报错,大概率是驱动版本和系统里的Chromium版本不匹配。先在Shell里查看当前Chromium的版本:
chromium-browser --version
比如输出是Chromium 114.0.5735.198,取主版本号114,然后修改代码指定版本:
import undetected_chromedriver as uc from selenium.webdriver.chrome.options import Options options = Options() options.binary_location = "/usr/bin/chromium-browser" # 指定Chrome主版本号,让驱动下载对应版本 driver = uc.Chrome(options=options, version_main=114) driver.get('https://google.com')
4. 补充:添加无头模式参数(推荐)
因为Replit没有图形界面,加上无头模式能让Chrome运行更稳定,在options里追加这些参数:
options.add_argument("--headless=new") options.add_argument("--no-sandbox") options.add_argument("--disable-dev-shm-usage")
按照这个流程走,基本就能解决启动失败的问题了。
内容的提问来源于stack exchange,提问作者Việt Cường
相关产品推荐
相关产品推荐

