使用requests下載日志出現HTTPSConnectionPool(host='***', port=443): Max retries exceeded with url: ******(Caused by SSLError(SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:579)'),))
分析是ssl證書報錯,解決辦法:
1.requests默認是keep-alive的,可能沒有釋放,加參數
headers={'Connection':'close'}
requests..get("http://...", headers={'Connection':'close'})
2.增加連接重試次數:
requests.adapters.DEFAULT_RETRIES = 5
3.關閉多余的連接
requests使用了urllib3庫,默認的http connection是keep-alive的,requests設置False關閉。
操作方法
s = requests.session() s.keep_alive = False
4.不用ssl證書驗證
requests.get('https://kennethreitz.org', verify=False)