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

Scrapy集成Selenium启用Headless模式仍弹出Chrome的解决问询

解决Scrapy+Selenium Headless模式失效问题

针对你遇到的Headless配置后仍弹出Chrome窗口的问题,可按以下步骤修改设置:

  • 使用适配Chrome 111的Headless参数
    Chrome 96及以上版本引入了新的无头模式,旧的--headless参数在Windows环境下可能存在兼容性问题,需替换为--headless=new(或--headless=chrome)。同时建议添加必要的辅助参数避免异常:

    chrome_options.add_argument("--headless=new")
    chrome_options.add_argument("--disable-gpu")  # 兼容旧环境,新版本可省略
    chrome_options.add_argument("--window-size=1920,1080")  # 固定视口大小,避免渲染异常
    
  • 确保配置正确传递给WebDriver
    初始化ChromeDriver时必须将配置好的ChromeOptions对象传入,避免遗漏参数导致配置失效。示例代码:

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    # 在Scrapy爬虫的初始化或中间件中配置
    def __init__(self):
        chrome_options = Options()
        # 配置无头模式参数
        chrome_options.add_argument("--headless=new")
        chrome_options.add_argument("--window-size=1920,1080")
        # 传入options初始化driver
        self.driver = webdriver.Chrome(options=chrome_options)
    
  • 检查是否存在配置覆盖
    排查Scrapy项目中的中间件、扩展代码,确保没有其他逻辑重新初始化ChromeDriver或修改ChromeOptions,导致无头配置被覆盖。

  • 验证ChromeDriver版本匹配
    确认使用的ChromeDriver版本与Chrome 111完全对应(版本号需为111.x.x.x),版本不匹配可能导致配置不生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 13:07:08