21.9. urllib.error — Classes d’exceptions levées par urllib.request

Code source : Lib/urllib/error.py


Le module urllib.error définit les classes des exceptions levées par urllib.request. La classe de base de ces exceptions est URLError.

Les exceptions suivantes sont levées par urllib.error aux cas appropriés :

exception urllib.error.URLError

Les gestionnaires lèvent cette exception (ou des exceptions dérivées) quand ils rencontrent un problème. Elle est une sous-classe de OSError.

reason

La raison de cette erreur. Il peut s’agir d’un message textuel ou d’une autre instance d’exception.

Modifié dans la version 3.3: URLError est maintenant une sous-classe de OSError plutôt que IOError.

exception urllib.error.HTTPError

Bien qu’étant une exception (une sous-classe de URLError), une HTTPError peut aussi fonctionner comme une valeur de retour normale et fichier-compatible (la même chose que renvoyé par urlopen()). Cela est utile pour gérer les erreurs HTTP exotiques, comme les requêtes d’authentification.

code

Un statut HTTP comme défini dans la RFC 2616. Cette valeur numérique correspond à une valeur trouvée dans le dictionnaire des codes comme dans http.server.BaseHTTPRequestHandler.responses.

reason

Il s’agit habituellement d’une chaîne de caractères expliquant la raison de l’erreur.

headers

Les en-têtes de la réponse HTTP correspondant à la requête HTTP qui a causé la HTTPError.

Nouveau dans la version 3.4.

exception urllib.error.ContentTooShortError(msg, content)

Cette exception est levée quand la fonction urlretrieve() détecte que le montant des données téléchargées est inférieur au montant attendu (donné par l’en-tête Content-Length). L’attribut content stocke les données téléchargées (et supposément tronquées).