首页 > 编程语言 > 详细

【使用python urllib时出现[SSL: CERTIFICATE_VERIFY_FAILED]报错的解决方案】 񼓸

时间:2019-08-24 00:46:38      阅读:31      评论:0      收藏:0      [点我收藏+]

标签:log   ext   reat   请求   lock   协议   err   href   检验   

原文: http://blog.gqylpy.com/gqy/306

首先,这个报错是告诉你,你的证书有问题.

其次,出现这个问题的原因,在于Python本身.

问题原因

Python升级到2.7.9以后,引入了一个新特性.
当使用urllib打开https的链接时,会检验一次ssl证书.
而当目标网站使用的是自签名证书时,就会抛出urllib2.URLError的错误.
·
所以在爬取https协议的网站或伪装请求头都会导致这个错误.
***

解决方案

方案一 全局取消证书验证

import ssl
ssl._create_default_https_context = ssl._create_unverified_context

方案二 创建未验证的上下文,在url中传入上下文参数

import ssl
# 创建未验证的上下文
context = ssl._create_unverified_context()
# 在url中传入上下文参数
response = urllib.request.urlopen(url, context=context)


原文: http://blog.gqylpy.com/gqy/306

【使用python urllib时出现[SSL: CERTIFICATE_VERIFY_FAILED]报错的解决方案】 񼓸

标签:log   ext   reat   请求   lock   协议   err   href   检验   

原文:https://www.cnblogs.com/mypath1/p/11403116.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 bubuko.com 版权所有 鲁ICP备09046678号-4
打开技术之扣,分享程序人生!
             

鲁公网安备 37021202000002号