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

Python Selenium配置Firefox代理不生效 求可运行实现代码

Python Selenium 对接Firefox配置代理失效解决方案

原有代码失效原因

  • Selenium 4.0及以上版本已弃用全局修改DesiredCapabilities的配置方式,该方式修改的全局参数不会被传入新初始化的Firefox实例,导致代理配置完全未加载
  • 旧版--headless参数在Firefox 90+版本中存在配置继承bug,部分启动参数、代理配置不会在无头实例中生效
  • 未通过FirefoxOptions显式传入代理配置,仅修改全局属性无法关联到当前启动的浏览器进程

可直接运行的无认证代理配置代码

注意:代理地址格式为IP:端口,不需要加http/https前缀

from selenium import webdriver
from selenium.webdriver.firefox.options import Options as FirefoxOptions

opts = FirefoxOptions()
# 替换为新版无头模式参数,避免配置不生效
opts.add_argument("--headless=new")
# 替换为你的代理地址
my_proxy = "xxx.xxx.xxx.xxx:xxxx"

# 直接在options中配置代理,不需要操作全局DesiredCapabilities
opts.set_preference("network.proxy.type", 1)
opts.set_preference("network.proxy.http", my_proxy.split(":")[0])
opts.set_preference("network.proxy.http_port", int(my_proxy.split(":")[1]))
opts.set_preference("network.proxy.ssl", my_proxy.split(":")[0])
opts.set_preference("network.proxy.ssl_port", int(my_proxy.split(":")[1]))
# 排除本地地址不走代理,可选配置
opts.set_preference("network.proxy.no_proxies_on", "localhost,127.0.0.1")

browser = webdriver.Firefox(options=opts)
browser.get("https://www.whatismyip.com/")
# 后续操作自行补充

带账号密码认证的代理配置方法

如果你的代理需要用户名密码验证,除了上述基础配置外,还需要额外安装依赖并配置认证:

  1. 先安装对应依赖:pip install selenium-wire
  2. 参考代码如下:
from seleniumwire import webdriver
from selenium.webdriver.firefox.options import Options as FirefoxOptions

opts = FirefoxOptions()
opts.add_argument("--headless=new")
# 替换为你的代理信息
proxy_ip = "xxx.xxx.xxx.xxx"
proxy_port = "xxxx"
proxy_user = "你的代理账号"
proxy_pass = "你的代理密码"

# 组装带认证的代理配置
seleniumwire_options = {
    "proxy": {
        "http": f"http://{proxy_user}:{proxy_pass}@{proxy_ip}:{proxy_port}",
        "https": f"http://{proxy_user}:{proxy_pass}@{proxy_ip}:{proxy_port}",
        "no_proxy": "localhost,127.0.0.1"
    }
}

browser = webdriver.Firefox(
    options=opts,
    seleniumwire_options=seleniumwire_options
)
browser.get("https://www.whatismyip.com/")

验证注意事项

  • 运行代码前先关闭本地所有Firefox进程,避免残留进程干扰配置加载
  • 如果是本地搭建的代理,确认代理服务已正常启动、端口未被防火墙拦截
  • 测试时如果whatismyip.com加载异常,可以换其他IP查询站点验证,避免站点反爬拦截导致结果误判

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 02:27:31