随笔 - 66  文章 - 0  评论 - 2  阅读 - 26万 

问题描述:

  用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的基础上,在代码最上面添加如下代码:

    1
    2
    from requests.packages import urllib3
    urllib3.disable_warnings()

    再执行,完美解决!

posted on   HandsomeFa  阅读(744)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示