批量调用同一个接口获取数据时出现以下错误
HTTPConnectionPool(host='dds.cr.usgs.gov', port=80): Max retries exceeded with url
是由于 http连接太多没有关闭 导致的。使用了requests库
解决办法为
1 增加重试连接次数
requests.adapters.DEFAULT_RETRIES = 5
2 requests使用了urllib3库,默认的http connection是keep-alive的,requests设置False关闭。
s = requests.session()
s.keep_alive = False
tips:现在的服务器多是使用http1.1 协议,默认为长连接,使用requests库频繁调用同一个域名接口时,使用session代替一般的get,post方法
参考: