python urllib2.urlopen SSL:CERTIFICATE_VERIFY_FAILED

时间:2018-08-15 07:11:46

标签: python urllib2

我的操作环境是:Python2.7,django1.9

我的原始代码是:

PowerMockito.mockStatic(TextUtils.class);
PowerMockito.when(TextUtils.isEmpty(any()))
    .thenAnswer((Answer<Boolean>) invocation -> {
        Object s = invocation.getArguments()[0];
        return s == null || s.length() == 0;
    });

但是出现错误:[SSL:CERTIFICATE_VERIFY_FAILED],我在Internet上找到了解决方案:

req = urllib2.Request(url, obj, headers)
opener = urllib2.urlopen(req)

使用它们后,现在代码变为:

First:
import ssl
import urllib2

context = ssl._create_unverified_context()
print urllib2.urlopen("https://imaojia.com/", context=context).read()

Second:
import ssl
import urllib2

ssl._create_default_https_context = ssl._create_unverified_context
print urllib2.urlopen("https://imaojia.com/").read()

现在有新错误:

  

HTTP错误503:服务不可用

req = urllib2.Request(url, obj, headers)
import ssl
opener = urllib2.urlopen(req, context=ssl._create_unverified_context())

谁可以给我一些建议?谢谢!

1 个答案:

答案 0 :(得分:1)

感谢Chiheb Nexus提供的答案可以帮助我解决问题,因此,请关闭此问题,并予以回答并采用。

这个问题的答案是我的请求会导致HTTP错误503。