在使用MacOS X的Python中,尝试向网站发出POST请求,但是遇到了以下错误:
post_response = session.post(post_url, data=post_payload, headers=post_headers)
:Traceback (most recent call last):
File "web_requests.py", line 424, in <module>
main()
File "web_requests.py", line 340, in main
post_response = session.post(post_url, data=post_payload, headers=post_headers)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 535, in post
return self.request('POST', url, data=data, json=json, **kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 488, in request
resp = self.send(prep, **send_kwargs)
File "/Library/Python/2.7/site-packages/requests/sessions.py", line 609, in send
r = adapter.send(request, **kwargs)
File "/Library/Python/2.7/site-packages/requests/adapters.py", line 497, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:590)
可能出现什么问题?
提前感谢,我一定会点赞/接受答案
编辑
针对Python中的POST请求
python -c'import ssl; print ssl.OPENSSL_VERSION'
)。 我猜问题是由于非常旧的OpenSSL版本0.9.8引起的,它随着MacOSX一起提供,不支持现代密码和TLS协议版本-但这只是许多可能性之一。 - Steffen Ullrichsession.post(post_url, data=post_payload, headers=post_headers)
。 - Jo Ko