:mod:`urllib.error` --- Exception classes raised by urllib.request ================================================================== .. module:: urllib.error :synopsis: Next generation URL opening library. .. moduleauthor:: Jeremy Hylton .. sectionauthor:: Senthil Kumaran The :mod:`urllib.error` module defines exception classes raise by urllib.request. The base exception class is URLError, which inherits from IOError. The following exceptions are raised by :mod:`urllib.error` as appropriate: .. exception:: URLError The handlers raise this exception (or derived exceptions) when they run into a problem. It is a subclass of :exc:`IOError`. .. attribute:: reason The reason for this error. It can be a message string or another exception instance (:exc:`socket.error` for remote URLs, :exc:`OSError` for local URLs). .. exception:: HTTPError Though being an exception (a subclass of :exc:`URLError`), an :exc:`HTTPError` can also function as a non-exceptional file-like return value (the same thing that :func:`urlopen` returns). This is useful when handling exotic HTTP errors, such as requests for authentication. .. attribute:: code An HTTP status code as defined in `RFC 2616 `_. This numeric value corresponds to a value found in the dictionary of codes as found in :attr:`http.server.BaseHTTPRequestHandler.responses`. .. exception:: ContentTooShortError(msg[, content]) This exception is raised when the :func:`urlretrieve` function detects that the amount of the downloaded data is less than the expected amount (given by the *Content-Length* header). The :attr:`content` attribute stores the downloaded (and supposedly truncated) data.