问题:
在浏览器中访问该网站时会弹出证书不受信任,可是忽略仍可继续访问
但当使用Python登陆时就会抛出_ssl.c:645错误,不能读取页面。
以前在作Android开发用Jsoup访问该站时也会有问题,当时的解决办法是写一个方法直接信任全部Https的安全证书,就在想python是否是也是能够这样作。
一、修改_create_default_https_context变量python
import ssl ssl._create_default_https_context = ssl._create_unverified_context
这样就能够解决了!浏览器
二、使用requests库发送请求的时候直接设置verify=False取消验证便可,会有下面问题安全
问题到此为止还没结束,取消SSL验证又带来一个新问题。出现了警告信息,这个锅是urllib3的。网站
InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised.
虽然不是错误,可是在捕捉异常时,默认会出问题,为了避免影响原有流程,应该去掉这些警告信息。url
或者直接取消全部urllib3的警告.net
requests.packages.urllib3.disable_warnings()
原文:https://blog.csdn.net/mighty13/article/details/78076258 code