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

如何为SeleniumBase(Undetected Chrome Driver)设置请求头?

解决SeleniumBase uc=True模式下设置请求头的问题

方案1:修正CDP命令的执行时机

uc=True模式下,CDP命令Network.setExtraHTTPHeaders需要在页面加载之前正确启用Network域并设置头,否则可能被浏览器忽略。试试以下代码:

from seleniumbase import SB

with SB(uc=True) as sb:
    # 先启用Network监控
    sb.driver.execute_cdp_cmd("Network.enable", {})
    # 设置全局额外请求头
    custom_headers = {"Accept": "application/json"}
    sb.driver.execute_cdp_cmd("Network.setExtraHTTPHeaders", {"headers": custom_headers})
    # 再访问目标页面
    sb.get("https://你的目标地址.com")

如果单个请求需要单独设置,可以在发起请求前重复执行setExtraHTTPHeaders——部分网站可能会在页面导航时重置头信息,这种情况下需要每次请求前重新配置。

方案2:集成Requestly扩展到Undetected Chrome

既然手动用Requestly有效,你可以把配置好规则的Requestly扩展打包成CRX,再加载到SeleniumBase的uc模式中:

  1. 在普通Chrome浏览器中安装Requestly,配置好Accept: application/json的规则,然后通过扩展管理页面的「打包扩展程序」功能导出CRX文件。
  2. 启动SeleniumBase时加载该CRX:
from seleniumbase import SB

# 替换为你的Requestly CRX文件路径
requestly_crx = "/本地路径/requestly-with-rules.crx"

with SB(uc=True, extensions=[requestly_crx]) as sb:
    # 此时访问页面会自动应用Requestly的规则
    sb.get("https://你的目标地址.com")

这种方式和手动操作完全一致,稳定性高,适合复杂的请求头规则场景。

方案3:通过Chrome启动参数设置全局头

尝试用Chrome的--header启动参数直接指定请求头,部分环境下uc模式兼容此参数:

from seleniumbase import SB

chrome_options = {
    "args": ["--header=Accept: application/json"]
}

with SB(uc=True, chrome_options=chrome_options) as sb:
    sb.get("https://你的目标地址.com")

注意:部分Chrome版本或uc模式的配置可能会屏蔽该参数,需要实际测试验证。

方案4:用JS Fetch发起带自定义头的请求

如果只是需要获取JSON数据,完全可以在登录后的浏览器上下文中,直接执行JS发起请求——自动携带会话Cookie,无需纠结驱动的头设置:

from seleniumbase import SB

with SB(uc=True) as sb:
    # 先完成登录流程,保持会话
    sb.get("https://登录页面.com")
    # 模拟登录操作...
    
    # 用Fetch API发起请求,自定义Accept头
    fetch_js = """
    return fetch('https://目标API地址.com', {
        method: 'GET',
        headers: {
            'Accept': 'application/json'
        }
    }).then(res => res.json());
    """
    api_result = sb.driver.execute_script(fetch_js)
    print(api_result)

这种方式不受浏览器驱动的头限制,可靠性极高,适合API数据爬取场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 01:10:10