豆瓣 URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:719)>

import urllib.request as urlrequest 
#import ssl
#ssl._create_default_https_context = ssl._create_unverified_context
url_visit=‘https://api.douban.com/v2/movie/subject/1764796‘
crawl_content=urlrequest.urlopen(url_visit).read()

print(crawl_content.decode(‘unicode-escape‘))

而当目标网站使用的是自签名的证书时就会抛出一个 urllib2.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)> 的错误消息,

解决方案包括下列两种方式:

1. 使用ssl创建未经验证的上下文,在urlopen中传入上下文参数

  1. import ssl

  2.  

    import urllib2

  3.  

  4.  

    context = ssl._create_unverified_context()

  5.  

    print urllib2.urlopen("https://www.12306.cn/mormhweb/", context=context).read()

2. 全局取消证书验证

  1. import ssl

  2.  

    import urllib2

  3.  

  4.  

    ssl._create_default_https_context = ssl._create_unverified_context

  5.  

  6.  

    print urllib2.urlopen("https://www.12306.cn/mormhweb/").read()

注意:在全全局请求文件导入import ssl

  1. import ssl

  2.  

    ssl._create_default_https_context = ssl._create_unverified_context

至此,问题圆满解决!

原文地址:https://www.cnblogs.com/weiwei-python/p/9934225.html

时间: 2024-10-13 10:55:08

豆瓣 URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:719)>的相关文章

执行buildman --fetch-arch arm提示&quot;urllib2.URLError: &lt;urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)&gt;&quot;如何处理?

答: 在uboot源码的tools/buildman/toolchain.py中取消证书验证,修改内容如下: diff --git a/tools/buildman/toolchain.py b/tools/buildman/toolchain.py index a65737fdf8..94877f1047 100644 --- a/tools/buildman/toolchain.py +++ b/tools/buildman/toolchain.py @@ -8,6 +8,7 @@ from

facebook graph api 报错SSLError(1, u&#39;[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)&#39;)

使用facebook graph api,报错如下 一开始以为是https证书验证失败,查了一下午源码,没有看到问题,于是把Python27\lib\site-packages\requests\adapters.py文件的如下位置异常处理注释掉了,看看异常到底从哪来的 def send(self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None): """Sends Prep

[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)

Could not fetch URL https://pypi.python.org/simple/six/: There was a problem confirming the ssl certificate: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600) - skippingCould not find a version that satisfies the requirement six

ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:847)

/******************************************************************************* * ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:847) * 说明: * 在处理HTTPS请求的时候出现ssl报错,之前貌似没这个问题. * * 2018-12-14 深圳 宝安西乡 曾剑锋 **************

Python [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed 解决方法

问题的原因是“SSL: CERTIFICATE_VERIFY_FAILED”. Python 升级到 2.7.9 之后引入了一个新特性,当使用urllib.urlopen打开一个 https 链接时,会验证一次 SSL 证书. 而当目标网站使用的是自签名的证书时就会抛出一个 urllib2.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)> 的错误消息

解决Cenos中pip无法升级出现([SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed)

进入到python的安装路径的 xxxx/site-packages/pip/_vendor/requests/adapters.py 编辑该文件,增加下面这行语句,(注意前面的空格,要和其他行保持一致,否则报错) 编辑完成,保存,正常执行升级语句 原文地址:https://www.cnblogs.com/chen-morning/p/11115116.html

in `connect&#39;: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)

最近在用ruby的一些库的时候,总是出现这个错误. 在使用net/imap库的时候,或者net/http库(主要是用到了https,https是用了ssl) 的时候,具体如下: 错误提示:E:/Ruby200/lib/ruby/2.0.0/net/imap.rb:1454:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (Op

urllib2.URLError: &lt;urlopen error [Errno 10061] &gt;

今天来运行以前的python脚本,结果报这个错:urllib2.URLError: <urlopen error [Errno 10061] > 原来是因为 解决方法:打开IE浏览器,依次选择 工具——Internet选项——连接——局域网设置,取消代理服务器复选框 坑中之最

Rails 之微信开发 : OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

微信公众平台,使用Ruby On Rails + Win7 在取得OpenID时,如果简单的使用http.get方法,会出现如下 SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed 解决方案: def get_open_id code    url="https://api.weixin.qq.com/sns/oauth2/access_token?appi