Python错误:requests请求https网站报错SSLError

发布时间 2023-06-29 15:38:19作者: HandsomeFa

问题描述:

  用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)')))

 

解决办法:

  1. 原因分析:请求https的网站时产生了报错,脚本直接执行不了!此时如果系统开了代理如clash之类的一定要先关掉!不然怎么着都会请求出错!

  2. 解决办法:关闭认证(verify=False)请求中添加verify=False,如下

    此时虽然执行脚本了,但还时有一条警告显示,最终生成的测试报告也不美观,因此还需要禁用安全请求警告,在添加verify=False的基础上,在代码最上面添加如下代码:

    from requests.packages import urllib3
    urllib3.disable_warnings()
    

    再执行,完美解决!