使用requests库调用REST API突发ProxyError故障求助
解决requests库的ProxyError连接拒绝问题
这种本地代理连接被拒绝的问题我之前排查过好几次,给你几个实用的排查方向:
先确认代理服务是否在运行
你的错误里指向的是本地127.0.0.1:39149这个代理端口,首先得确认这个端口的代理程序有没有正常启动。- Windows可以打开命令提示符,运行:
netstat -ano | findstr :39149,看看有没有进程ID对应这个端口; - Linux/macOS可以用终端运行:
lsof -i :39149或者netstat -tulpn | grep 39149,检查端口是否被监听。
如果没有任何输出,说明代理程序没启动,把它打开就行。
- Windows可以打开命令提示符,运行:
检查脚本或系统的代理配置
会不会是脚本里的代理配置变了?或者系统的环境变量(HTTP_PROXY/HTTPS_PROXY)被修改了?可以临时在脚本里禁用代理测试:import requests # 临时关闭代理,直接请求百度测试 try: resp = requests.get("http://www.baidu.com/", proxies={"http": None, "https": None}) print(f"请求成功,状态码:{resp.status_code}") except Exception as e: print(f"仍然报错:{e}")如果这样能成功,那就是代理配置的问题——要么修正代理的地址/端口,要么在不需要代理的时候移除代理设置。
排查防火墙或安全软件拦截
有时候防火墙、杀毒软件会突然拦截本地端口的连接,导致代理端口无法访问。可以临时关闭防火墙试试,或者把你的代理程序添加到安全软件的信任列表里。检查代理程序是否崩溃或端口被占用
如果之前代理是正常运行的,可能是代理程序意外崩溃了,或者39149端口被其他程序占用了。重启代理程序,或者换一个未被占用的端口试试。
简单说,这个错误的核心是:你的requests脚本试图通过本地39149端口的代理发送请求,但代理服务没响应(要么没开,要么连不上),所以才会报连接拒绝的错误。
内容的提问来源于stack exchange,提问作者XZX
相关产品推荐
相关产品推荐

