request 进行 https 请求时报 HTTPSConnectionPool 错误

本贴最后更新于 1520 天前,其中的信息可能已经时过境迁

image.png

request进行https请求时,会出现HTTPSConnectionPool错误

经过查询第一种解决方法:


import requests
在请求参数中增加:verify=False
requests.get('https://www.zhihu.com/',verify=False)

第一种解决方法增加参数后,会出现警告

```InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised

在语句前增加以下代码不会在报错:

requests.packages.urllib3.disable_warnings()

第二种解决方法:

  1. requests默认是keep-alive的,可能没有释放,加参数 headers={'Connection':'close'}
requests..get("http://...", headers={'Connection':'close'})
  1. 增加连接重试次数:
requests.adapters.DEFAULT_RETRIES = 5
  1. 关闭多余的连接:requests使用了urllib3库,默认的http connection是keep-alive的,requests设置False关闭。

操作方法:

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

参考资料:https://blog.csdn.net/wdh315172/article/details/80491668

回帖
请输入回帖内容 ...