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

Requests配置代理后仍用本机IP且HTTPS请求报WinError 10060错误如何解决

问题1:请求仍使用本机IP的排查解决
  • 校验代理配置格式是否符合要求
    Requests要求代理字典必须同时包含http和https两个配置项,仅配置单条规则会导致对应协议的请求直接走本机直连。正确配置示例如下:
import requests

proxies = {
    "http": "http://[代理地址]:[代理端口]",
    # 注意:除非代理本身支持HTTPS协议接入,否则HTTPS请求的代理地址仍填http前缀
    "https": "http://[代理地址]:[代理端口]"
}
# 可以请求IP查询接口验证代理是否生效
resp = requests.get("https://api.ipify.org", proxies=proxies)
print(resp.text)

如果代理需要身份认证,需要将账号密码拼接在代理地址中:
"http://[用户名]:[密码]@[代理地址]:[代理端口]"

  • 禁用系统环境变量覆盖
    Requests默认会读取系统的HTTP_PROXY、HTTPS_PROXY、NO_PROXY环境变量,若参数配置和环境变量冲突,或目标地址命中NO_PROXY规则,会自动走直连。可添加trust_env=False参数强制忽略环境变量:
resp = requests.get("https://api.ipify.org", proxies=proxies, trust_env=False)
  • 校验Session代理配置
    如果使用requests.Session()复用连接,需要将代理配置绑定到Session实例,单次请求传参可能不生效:
session = requests.Session()
session.proxies = proxies
session.trust_env = False
resp = session.get("https://api.ipify.org")
问题2:HTTPS请求触发WinError 10060超时的排查解决

具体报错信息:

TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

  • 验证代理本身的HTTPS转发能力
    大部分免费公共代理仅支持HTTP协议请求转发,遇到HTTPS的CONNECT请求会直接无响应,导致超时。可以先在浏览器配置同款代理访问HTTPS站点,确认代理可用性。
  • 检查系统安全软件拦截
    Windows防火墙、第三方杀毒软件大概率会拦截Python进程发起的代理转发请求,可临时关闭安全软件后重试,确认是否是拦截导致的超时。
  • 调整请求配置
    1. 适当拉长超时阈值,避免默认超时时间过短被判定为失败:requests.get("目标地址", proxies=proxies, timeout=30)
    2. 若代理使用自签名SSL证书,可临时关闭SSL验证(仅测试场景使用,生产环境不推荐):requests.get("目标地址", proxies=proxies, verify=False)
  • 核对代理端口配置
    部分代理服务会将HTTP和HTTPS的转发端口分开设置,注意核对https配置项对应的端口是否正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 22:27:03