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

运行requests请求代码时遭遇requests.exceptions.ProxyError错误的解决方法

解决requests代理错误:代理仅支持HTTP不支持HTTPS的问题

错误原因

错误信息明确说明:你的代理仅支持HTTP协议,不支持HTTPS,但当前配置的代理使用了HTTPS协议,导致SSL版本不匹配,请求失败。

解决方案

  • 修改代理协议为HTTP
    无论你是通过代码指定代理还是环境变量配置,都需要将HTTPS代理的URL协议从https://改为http://:

    • 代码内指定代理示例:
      import requests
      
      # 配置代理,注意https字段也用http开头的代理地址
      proxies = {
          "http": "http://your-proxy-host:port",
          "https": "http://your-proxy-host:port"
      }
      
      response = requests.get("https://w3schools.com/python/demopage.htm", proxies=proxies)
      print(response.text)
      
    • 环境变量配置(Linux/macOS示例):
      export http_proxy="http://your-proxy-host:port"
      export https_proxy="http://your-proxy-host:port"
      

    原理:即使目标站点是HTTPS,只要代理本身是HTTP类型,就可以通过HTTP代理建立隧道连接到HTTPS站点,requests会自动处理这个过程。

  • 检查系统默认代理设置
    如果代码中没有显式配置代理,可能是系统默认代理设置了HTTPS协议。进入系统网络设置,将代理地址改为http://开头的格式。

  • 验证代理可用性
    先用curl测试代理是否能正常访问目标站点:

    curl -x http://your-proxy-host:port https://w3schools.com/python/demopage.htm
    

    如果curl请求成功,说明代理本身没问题,只需要调整代码或环境变量中的代理配置即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 14:35:35