Wie behandelt man das Zeitlimit von urllib in Python 3?

9

Zunächst ist mein Problem sehr ähnlich zu diesem . Ich möchte eine Zeitüberschreitung von urllib.urlopen (), um eine Ausnahme zu erzeugen, die ich behandeln kann.

Fällt das nicht unter URLError?

%Vor%

Die Fehlermeldung:

  

resp = urllib.request.urlopen (req, timeout = 10) .read () .decodieren ('utf-8')
      Datei "/usr/lib/python3.2/urllib/request.py", Zeile 138, in urlopen
      return opener.open (URL, Daten, Timeout)
      Datei "/usr/lib/python3.2/urllib/request.py", Zeile 369, im geöffneten
      Antwort = self._open (req, Daten)
      Datei "/usr/lib/python3.2/urllib/request.py", Zeile 387, in _open
      '_open', req)
      Datei "/usr/lib/python3.2/urllib/request.py", Zeile 347, in _call_chain       result = func (* args)
      Datei "/usr/lib/python3.2/urllib/request.py", Zeile 1156, in http_open
      return self.do_open (http.client.HTTPConnection, req)
      Datei "/usr/lib/python3.2/urllib/request.py", Zeile 1141, in do_open
      r = h.gerresponse ()
      Datei "/usr/lib/python3.2/http/client.py", Zeile 1046, in getresponse       response.begin ()
      Datei "/usr/lib/python3.2/http/client.py", Zeile 346, beginnt mit
      Version, Status, Grund = self._read_status ()
      Datei "/usr/lib/python3.2/http/client.py", Zeile 308, in _read_status
      line = str (self.fp.readline (_MAXLINE + 1), "iso-8859-1")
      Datei "/usr/lib/python3.2/socket.py", Zeile 276, in readinto       zurückgeben self._sock.recv_into (b)
      socket.timeout: Zeitlimit überschritten

Es gab eine große Veränderung gegenüber Python 3, als sie die Module urllib und urllib2 in urllib neu organisierten. Ist es möglich, dass es eine Veränderung gab, die das verursacht?

    
nindalf 06.01.2012, 19:36
quelle

1 Antwort

19

Die Ausnahme ist Timeout von Socket, also

%Vor%

sollte die neue Ausnahme erfassen. Obwohl ich nicht sicher bin, ob das deine Frage beantwortet, da ich nicht sicher bin, was deine Frage ist ..

    
danodonovan 06.01.2012, 19:45
quelle

Tags und Links