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
不过反正也不好
因此,当我在 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
不过反正也不好