2016-12-20 1 views
2

Ich mache ein kleines Projekt an der Universität - extrahieren Kurse von der Universität Website und Bau ideale Zeitplan.SSLError: EOF trat in Verletzung des Protokolls mit Anfragen auf Python

beim Versuch, die Website mit Anfragen halte i für den Zugriff auf den Fehler bekommen:

requests.exceptions.SSLError: EOF occurred in violation of protocol (_ssl.c:645) 

dieses Problem tritt nur bei dem Versuch, die Seite, die ich brauche zu erreichen. auf anderen Seiten gibt es kein Problem.

iv'e versucht, diese bisherigen Lösungen, ohne Glück:

  • meinen eigenen HTTPadapter mit ssl-Version zu schaffen = TLSv1
  • überwiegende ssl Version im ssl.py (context = SSL-Kontext (PROTOCOL_SSLv23))
  • Installation (die mir einen anderen Fehler gab)/Entfernen pyOpenSSL

zur Zeit versuche ich herauszufinden, was zu tun ist. Ich kann diese Methode "wegwerfen" und versuchen, die Daten mit Selen zu extrahieren, aber das wird ein sehr langsamer Vorgang sein.

irgendwelche Ideen?

+0

Vielleicht ist es einfach ein Problem mit Ihrer Python oder SSL-Bibliothek Installation lokal. Bitte geben Sie Ihren Beispielcode einschließlich des HTTP-Endpunkts an, für den getestet werden soll. Wenn Sie etwas veröffentlichen, das leicht zu reproduzieren ist, können wir Ihnen helfen. –

Antwort

0

Der Fehler, mit dem Sie konfrontiert sind, ist versionsspezifisch. Ich denke, es ist 3.5 versuchen, eine andere Version zu installieren. Oder versuchen Sie dies, es ist keine Lösung für Ihr Problem, sondern eine Arbeit herum. Anstatt Pyssl oder irgendeine Art von SSL zu verwenden. Machen Sie die Anfrage mit so.

cj = CookieJar() 
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) 
     opener.addheaders = [('User-agent', 'Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.27 Safari/537.17')] 
sou = opener.open(url).read() 

Hier URL ist Ziel bestimmt. Sou enthält den Quellcode der Seite. Verwenden Sie entweder Beautifulsoup oder re, um die gewünschten Daten zu erhalten. Hoffe es hilft

Verwandte Themen