Python请求上的SSL错误
我试图使用Python向API发出请求,但遇到了一个SSL错误。我到处都找过,但似乎找不到解决办法 这是我在虚拟环境中安装的版本:Python请求上的SSL错误,python,ssl,request,Python,Ssl,Request,我试图使用Python向API发出请求,但遇到了一个SSL错误。我到处都找过,但似乎找不到解决办法 这是我在虚拟环境中安装的版本: Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 26 2016, 12:10:39) [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin Type "help", "copyright", "credits" or "license" for more information
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 26 2016, 12:10:39)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> ssl.OPENSSL_VERSION
'OpenSSL 0.9.8zg 14 July 2015'
我正在尝试使用在上找到的代码:
这是输出:
Traceback (most recent call last):
File "/path/to/file", line 23, in <module>
response = s.get(url)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/sessions.py", line 487, in get
return self.request('GET', url, **kwargs)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/sessions.py", line 475, in request
resp = self.send(prep, **send_kwargs)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/sessions.py", line 585, in send
r = adapter.send(request, **kwargs)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/adapters.py", line 477, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590)
回溯(最近一次呼叫最后一次):
文件“/path/to/File”,第23行,在
response=s.get(url)
get中的文件“/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site packages/requests/sessions.py”,第487行
返回self.request('GET',url,**kwargs)
文件“/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site packages/requests/sessions.py”,请求中第475行
resp=自我发送(准备,**发送)
文件“/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site packages/requests/sessions.py”,第585行,在send中
r=适配器.send(请求,**kwargs)
文件“/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site packages/requests/adapters.py”,第477行,在send中
raise SSLError(e,请求=请求)
requests.exceptions.SSLError:[SSL:TLSV1警报协议版本]TLSV1警报协议版本(_SSL.c:590)
我还尝试使用我在另一个网站上找到的建议,其中包括使用requests\u toolbelt包,但没有成功
如何解决此问题?
msesandbox.cisco.com:8081
此服务器仅支持TLS 1.2,即不支持TLS 1.0或更差版本
“OpenSSL 0.9.8zg 2015年7月14日”
此OpenSSL版本尚不支持TLS 1.2。为此,您至少需要OpenSSL 1.0.1。谢谢您的回答。如何在虚拟环境中更新它?我正在使用Mac进行编码,稍后我将在Heroku上部署它。@rlc:您需要重新编译所有内容。看见
Traceback (most recent call last):
File "/path/to/file", line 23, in <module>
response = s.get(url)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/sessions.py", line 487, in get
return self.request('GET', url, **kwargs)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/sessions.py", line 475, in request
resp = self.send(prep, **send_kwargs)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/sessions.py", line 585, in send
r = adapter.send(request, **kwargs)
File "/Users/rafacarv/Environments/python2_7_12_cmx/venv/lib/python2.7/site-packages/requests/adapters.py", line 477, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:590)