urllib.error — Ausnahmeklassen, die von urllib.request ausgelöst werden

Quellcode: Lib/urllib/error.py


Das Modul urllib.error definiert die Ausnahmeklassen für Ausnahmen, die von urllib.request ausgelöst werden. Die Basisklasse für Ausnahmen ist URLError.

Die folgenden Ausnahmen werden von urllib.error entsprechend ausgelöst

exception urllib.error.URLError

Die Handler lösen diese Ausnahme (oder abgeleitete Ausnahmen) aus, wenn ein Problem auftritt. Sie ist eine Unterklasse von OSError.

reason

Der Grund für diesen Fehler. Es kann sich um eine Meldungszeichenkette oder eine andere Ausnahmeinstanz handeln.

Geändert in Version 3.3: URLError war früher ein Subtyp von IOError, das jetzt ein Alias von OSError ist.

exception urllib.error.HTTPError(url, code, msg, hdrs, fp)

Obwohl sie eine Ausnahme ist (eine Unterklasse von URLError), kann eine HTTPError auch als nicht-außergewöhnlicher dateiähnlicher Rückgabewert fungieren (dasselbe, was urlopen() zurückgibt). Dies ist nützlich bei der Behandlung exotischer HTTP-Fehler, wie z. B. Anfragen nach Authentifizierung.

url

Enthält die URL der Anfrage. Ein Alias für das Attribut *filename*.

code

Ein HTTP-Statuscode, wie in RFC 2616 definiert. Dieser numerische Wert entspricht einem Wert, der im Wörterbuch der Codes gefunden wird, wie er in http.server.BaseHTTPRequestHandler.responses zu finden ist.

reason

Dies ist normalerweise eine Zeichenkette, die den Grund für diesen Fehler erklärt. Ein Alias für das Attribut *msg*.

headers

Die HTTP-Antwort-Header für die HTTP-Anfrage, die den HTTPError verursacht hat. Ein Alias für das Attribut *hdrs*.

Hinzugefügt in Version 3.4.

fp

Ein dateiähnliches Objekt, von dem der HTTP-Fehlerkörper gelesen werden kann.

exception urllib.error.ContentTooShortError(msg, content)

Diese Ausnahme wird ausgelöst, wenn die Funktion urlretrieve() erkennt, dass die Menge der heruntergeladenen Daten kleiner ist als die erwartete Menge (gegeben durch den Header *Content-Length*).

content

Die heruntergeladenen (und angeblich abgeschnittenen) Daten.