python 代码在新环境中抛出异常但没有它工作正常

python code throw Exception in new environment but works fine without it

因此,当我在 pycharm 中调试我的代码时,我在 urllib2.urlopen 中发现了一个异常:

#!/usr/bin/python
req = urllib2.Request(urlname)
urllib2.urlopen(req) 

这是我发现的一个错误:

'Exception Error in Token:RequestToken : (<class
\'urllib2.URLError\'>, URLError(SSLError(1, u\'[SSL:
CERTIFICATE_VERIFY_FAILED] certificate verify failed
(_ssl.c:661)\'),), <traceback object at 0x7fbcfbfb1a70>)'

其实我应该这样做:

#!/usr/bin/python
context = ssl._create_unverified_context()
req = urllib2.Request(urlname)
urllib2.urlopen(req, context=context)

解决方法可能是:

import ssl
ssl._create_default_https_context = ssl._create_unverified_context

不过反正也不好