Python2/3 解决访问Https时不受信任SSL证书问题

耗尽温柔 提交于 2020-03-12 11:31:42

问题: 
在浏览器中访问该网站时会弹出证书不受信任,但是忽略仍可继续访问 
但当使用Python登录时就会抛出_ssl.c:645错误,不能读取页面。 
之前在做Android开发用Jsoup访问该站时也会有问题,当时的解决办法是写一个方法直接信任所有Https的安全证书,就在想python是不是也是可以这样做。
1、修改_create_default_https_context变量

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

这样就可以解决了!

2、使用requests库发送请求的时候直接设置verify=False取消验证即可,会有下面问题

 

问题到此为止还没结束,取消SSL验证又带来一个新问题。出现了警告信息,这个锅是urllib3的。

InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. 
虽然不是错误,但是在捕捉异常时,默认会出问题,为了不影响原有流程,应该去掉这些警告信息。


或者直接取消所有urllib3的警告

requests.packages.urllib3.disable_warnings()


原文:https://blog.csdn.net/mighty13/article/details/78076258 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!