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

使用Python+Selenium+BrightData配置Chrome Driver代理失败求助

解决BrightData代理在Selenium Chrome中不生效的问题

1. 修正代理字符串格式错误

你代码里的代理拼接顺序完全错误,导致Chrome无法识别有效的代理配置。正确的带认证代理格式应为用户名:密码@代理主机:端口,你当前的拼接逻辑把主机、密码、用户名的顺序搞混了。

错误的拼接代码:

PROXY = PROXY_HOST+':'+PROXY_PASS+'@'+PROXY_USER+':'+PROXY_PORT

替换为正确的拼接:

PROXY = f"{PROXY_USER}:{PROXY_PASS}@{PROXY_HOST}:{PROXY_PORT}"

修正后先重新运行,验证基础配置问题是否解决。

2. 处理Chrome的代理认证限制

如果修正格式后仍然不生效,是因为Chrome出于安全限制,默认禁止在--proxy-server参数中直接携带用户名密码。可以用以下两种方法解决:

方法一:通过Chrome DevTools协议配置代理

利用Chrome的DevTools协议直接设置代理及认证信息,绕开参数限制:

import base64
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

PROXY_HOST = 'xxxx' 
PROXY_PORT = 'xxxx' 
PROXY_USER = 'xxxx' 
PROXY_PASS = 'xxxx' 

options = Options()
options.headless = headless_mode
options.add_argument("--window-size=1920,1200")
options.add_experimental_option("excludeSwitches", ["enable-logging"])

driver = webdriver.Chrome(options=options, executable_path=DRIVER_PATH)

# 通过DevTools设置代理及认证
driver.execute_cdp_cmd('Network.setProxy', {
    'proxyType': 'manual',
    'httpProxy': f"{PROXY_HOST}:{PROXY_PORT}",
    'httpsProxy': f"{PROXY_HOST}:{PROXY_PORT}",
    'proxyAuthorization': f"Basic {base64.b64encode(f'{PROXY_USER}:{PROXY_PASS}'.encode()).decode()}"
})

driver.get('https://www.cual-es-mi-ip.net/')

方法二:加载BrightData官方Chrome扩展

BrightData提供了官方扩展自动处理代理认证,下载对应的.crx扩展文件后,在Selenium中加载:

options.add_extension('/本地路径/brightdata-proxy-extension.crx')

这种方式会自动完成代理的认证流程,无需手动配置凭据。

3. 额外验证要点

  • 确认BrightData的代理主机、端口、用户名、密码完全正确,无拼写错误
  • 关闭本地VPN或其他代理工具,避免代理冲突
  • 暂时关闭无头模式运行Chrome,查看是否出现代理认证弹窗,若有则说明配置仍存在问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 18:05:48