问题描述:
用requests包请求https的网站时,经常会遇到证书问题,也就是常见的SSLerror:
- requests.exceptions.SSLError: HTTPSConnectionPool(host='www.xxx.com', port=443): Max retries exceeded with url: xxx.html (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')))
解决办法:
-
原因分析:请求https的网站时产生了报错,脚本直接执行不了!此时如果系统开了代理如clash之类的一定要先关掉!不然怎么着都会请求出错!
-
解决办法:关闭认证(verify=False)请求中添加verify=False,如下
此时虽然执行脚本了,但还时有一条警告显示,最终生成的测试报告也不美观,因此还需要禁用安全请求警告,在添加verify=False的基础上,在代码最上面添加如下代码:
from requests.packages import urllib3 urllib3.disable_warnings()
再执行,完美解决!