Python Max retries exceeded with url错误

在学习Python requests库时遇到MaxRetriesExceeded错误,问题根源可能是Fiddler开启导致的大量未关闭的HTTP连接。关闭Fiddler后问题解决。另外,可以尝试增加请求重试次数或关闭session的keep-alive选项来避免此类问题。提供的解决方案包括设置requests的默认重试次数为5,并在session中关闭keep-alive功能。
摘要由CSDN通过智能技术生成

进行requests库学习的时候,报Max retries exceeded with url错误,网上查询说是,用下面这个解决方法没用,后来关闭了fiddler后发现就可以了,可能fiddler开的连接数太多了,http连接太多没有关闭导致的。

解决办法:

1、增加重试连接次数

requests.adapters.DEFAULT_RETRIES = 5

2、关闭多余的连接

requests使用了urllib3库,默认的http connection是keep-alive的,requests设置False关闭。

操作方法:

s = requests.session()
s.keep_alive = False

例如:

import requests,json,unittest
def send_req(url,method,data=None):
    if method=='GET':
        requests.adapters.DEFAULT_RETRIES = 5
        s = requests.session()
        s.keep_alive = False
        res=requests.get(url=url).json()
        return json.dumps(res,indent=2)
    else:
        res=requests.post(url=url,data=data)
        return res.json()
url=r'https://www.baidu.com/home/xman/data/tipspluslist?indextype=manht&_req_seqid=0xe84d39f7000079b2&asyn=1&t=1535105478702&sid=26524_1442_21097_26921_22159'
res=send_req(url,'GET')

参考:https://www.cnblogs.com/classid/p/9532790.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值