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

无GUI环境下使用Selenium无头浏览器爬取遇Chrome安装报错求助

WSL Ubuntu 22.04无GUI环境下Selenium无需完整安装Chrome爬取方案

问题原因

你遇到的报错是因为默认配置下,Selenium需要找到Chrome浏览器的二进制文件才能启动,即使是无头模式也不例外——官方文档提到的"无需安装浏览器"实际指的是可以借助Chrome Headless Shell(轻量版无头二进制文件)而非完整Chrome浏览器来运行。


方案一:使用Chrome Headless Shell(完全无需完整Chrome)

这是最贴合你需求的方案,仅需下载轻量的Headless Shell二进制文件:

  1. 先确认本地ChromeDriver版本:
    chromedriver --version
    
  2. 下载对应版本的Chrome Headless Shell(示例为114.0.5735.90版本,需替换为你的ChromeDriver对应版本):
    wget https://storage.googleapis.com/chrome-for-testing-public/114.0.5735.90/linux64/chrome-headless-shell-linux64.zip
    unzip chrome-headless-shell-linux64.zip
    sudo mv chrome-headless-shell-linux64/chrome-headless-shell /usr/local/bin/
    
  3. 修改项目中Selenium初始化代码,指定Headless Shell路径:
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    options = Options()
    options.add_argument("--headless=new")  # 启用新版无头模式
    options.binary_location = "/usr/local/bin/chrome-headless-shell"
    # 额外添加WSL环境必需参数
    options.add_argument("--no-sandbox")
    options.add_argument("--disable-dev-shm-usage")
    
    driver = webdriver.Chrome(options=options)
    

方案二:安装轻量Chromium替代完整Chrome

如果不想手动管理Headless Shell,可安装体积更小的Chromium(开源版Chrome),配合Selenium自动驱动管理:

  1. 安装Chromium:
    sudo apt update && sudo apt install chromium-browser -y
    
  2. 安装Selenium驱动管理工具:
    pip install webdriver-manager
    
  3. 更新代码中的驱动初始化逻辑:
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    from webdriver_manager.chrome import ChromeDriverManager
    from selenium.webdriver.chrome.service import Service
    
    options = Options()
    options.add_argument("--headless=new")
    options.add_argument("--no-sandbox")
    options.add_argument("--disable-dev-shm-usage")
    # 指定Chromium二进制路径(部分环境需手动指定)
    options.binary_location = "/usr/bin/chromium-browser"
    
    driver = webdriver.Chrome(
        service=Service(ChromeDriverManager().install()),
        options=options
    )
    

额外提示

  • Facebook Marketplace有严格的反爬机制,建议添加--user-agent参数模拟真实浏览器,或使用undetected-chromedriver库绕过检测
  • WSL环境内存有限,运行时避免同时开启其他高内存进程,防止浏览器崩溃

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 21:32:47