urllib.error — Clases de excepción lanzadas por urllib.request

Código fuente: Lib/urllib/error.py


El módulo urllib.error define las clases de excepción para las excepciones lanzadas por urllib.request. La clase de excepción base es URLError.

Las siguientes excepciones son lanzadas por urllib.error según sea apropiado:

exception urllib.error.URLError

Los gestores lanzan esta excepción (o excepciones derivadas) cuando encuentran un problema. Es una subclase de OSError.

reason

El motivo de este error. Puede ser una cadena de mensaje u otra instancia de una excepción.

Distinto en la versión 3.3: URLError used to be a subtype of IOError, which is now an alias of OSError.

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

A pesar de ser una excepción (una subclase de URLError), un HTTPError también puede funcionar como un valor de retorno no excepcional de tipo archivo (lo mismo que retorna urlopen()). Esto es útil para gestionar errores HTTP exóticos, como peticiones de autentificación.

url

Contiene la URL de la solicitud. Un alias para el atributo filename.

code

Un código de estado HTTP como los definidos en RFC 2616. Este valor numérico se corresponde con un valor de un diccionario de códigos como el que hay en http.server.BaseHTTPRequestHandler.responses.

reason

Normalmente esto es una cadena de caracteres que explica el motivo de este error. Un alias para el atributo msg.

headers

Las cabeceras de la respuesta HTTP de la petición HTTP que causó el HTTPError. Un alias para el atributo hdrs.

Nuevo en la versión 3.4.

fp

Un objeto similar a un archivo donde se puede leer el cuerpo del error HTTP.

exception urllib.error.ContentTooShortError(msg, content)

Esta excepción se lanza cuando la función urlretrieve() detecta que la cantidad de datos descargados es menor que la esperada (dada por la cabecera Content-Length).

content

Los datos descargados (y supuestamente truncados).