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

为什么Python requests配置代理后未生效,仍展示真实IP?

问题根因

你配置的proxies字典仅指定了HTTP协议请求走代理,当访问HTTPS协议的IP查询站点时,requests无法匹配到https对应的代理规则,会直接使用本地网络发起请求,因此不会触发报错,也不会走你配置的代理。

解决方案
  • 补全HTTPS协议的代理配置
    若使用的代理同时支持HTTP/HTTPS转发,直接补充https对应的代理项即可,示例代码:
    import requests
    
    proxies = {
        "http": "http://123.123.123.123:8080",
        "https": "http://123.123.123.123:8080"
    }
    requests.get("https://exampleurl.com", proxies=proxies)
    
  • 适配socks5代理的配置规则
    若使用socks5代理,需要修改代理协议前缀,同时补全HTTP、HTTPS两项配置:
    proxies = {
        "http": "socks5://127.0.0.1:1080",
        "https": "socks5://127.0.0.1:1080"
    }
    
  • 关闭环境变量代理覆盖
    requests会默认读取系统的HTTP_PROXY、HTTPS_PROXY等环境变量,优先级高于代码中传入的proxies参数。可通过添加trust_env=False参数强制忽略环境变量配置:
    requests.get("https://exampleurl.com", proxies=proxies, trust_env=False)
    
  • 排查重定向与代理有效性
    可以添加allow_redirects=False参数关闭自动重定向,确认首次请求是否走代理;也可先通过其他工具验证代理本身的可用性,排除代理失效问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 11:57:03