2016-11-08 6 views
6

मैं fiddle.py है 4 लाइनोंrequests.exceptions.SSLError

import requests 

url = "https://randomuser.me/api/" 
locations = requests.get(url,verify=False).json() 

print locations 

जब मैं इसे चलाने वाले, मैं

requests.exceptions.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:590)


हो रही रखा # 1

verify=False सेट की कोशिश करो

कोड चलाएं, वही त्रुटि।


कोशिश # 2

भागो sudo pip install --upgrade requests

भागो कोड, एक ही त्रुटि।


कोशिश # 3

भागो

sudo pip install --upgrade pip

और

sudo pip install requests[security]

भागो कोड, Diff में त्रुटि।

requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'SSL23_GET_SERVER_HELLO', 'sslv3 alert handshake failure')],)",)


विवरण

Python 2.7.10 
OpenSSL 0.9.8zh 14 Jan 2016 
Mac OS X 10.11.6 

प्रश्न

कैसे एक के बारे में और इस बग को जाना चाहते हैं?


मैं इस समय किसी भी सुझाव के लिए खोल रहा हूं।

इस पर कोई संकेत/सुझाव/सहायता की सराहना की जाएगी!

+0

क्या यह सहायता हो सकती है? http://stackoverflow.com/questions/31649390/python-requests-ssl-handshake- विफलता – Richy

+0

मैंने उन सभी को आजमाया है, क्या मुझे अपने मैक या टर्मिनल को पुनरारंभ करने की आवश्यकता है? – ihue

+0

क्या आपको इस समस्या का समाधान मिला है? मुझे एक ही मुद्दे का सामना करना पड़ रहा है। – Whitecat

उत्तर

2

आप ओपनएसएसएल 1.0.2 और पायथन 2.7.12 पर रहना चाहते हैं। आप शायद नवीनतम कर्ल भी चाहते हैं।

brew update 
brew upgrade openssl 
brew upgrade curl 
brew upgrade python 

python --version # make sure you have python 2.7.12 
curl https://randomuser.me/api/ # to verify 
+0

आपको उस '--force-link' की भी आवश्यकता हो सकती है। मैं ब्रू का उपयोग नहीं करता, इसलिए मुझे यकीन नहीं है कि क्या यह कहा जाता है। लेकिन यह अक्सर मैक, ब्रू और ओपनएसएसएल सवालों के लिए दिखाता है। – jww

+2

यहां तक ​​कि मेरा अजगर अब भी 2.7 है।12 - मुझे यह 'कर्ल मिला: (35) त्रुटि: 14077410: एसएसएल दिनचर्या: एसएसएल 23_GET_SERVER_HELLO: sslv3 अलर्ट हैंडशेक विफलता' जब मैं इसे 'curl https: // randomuser.me/api/' – ihue

+0

चलाता हूं क्या आपके पास कोई अन्य सुझाव है? – ihue