| :mod:`!urllib.error` --- Exception classes raised by urllib.request | |
| =================================================================== | |
| .. module:: urllib.error | |
| :synopsis: Exception classes raised by urllib.request. | |
| .. moduleauthor:: Jeremy Hylton <jeremy@alum.mit.edu> | |
| .. sectionauthor:: Senthil Kumaran <orsenthil@gmail.com> | |
| **Source code:** :source:`Lib/urllib/error.py` | |
| -------------- | |
| The :mod:`urllib.error` module defines the exception classes for exceptions | |
| raised by :mod:`urllib.request`. The base exception class is :exc:`URLError`. | |
| 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:`OSError`. | |
| .. attribute:: reason | |
| The reason for this error. It can be a message string or another | |
| exception instance. | |
| .. versionchanged:: 3.3 | |
| :exc:`URLError` used to be a subtype of :exc:`IOError`, which is now an | |
| alias of :exc:`OSError`. | |
| .. exception:: HTTPError(url, code, msg, hdrs, fp) | |
| 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:`~urllib.request.urlopen` returns). This | |
| is useful when handling exotic HTTP errors, such as requests for | |
| authentication. | |
| .. attribute:: url | |
| Contains the request URL. | |
| An alias for *filename* attribute. | |
| .. 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`. | |
| .. attribute:: reason | |
| This is usually a string explaining the reason for this error. | |
| An alias for *msg* attribute. | |
| .. attribute:: headers | |
| The HTTP response headers for the HTTP request that caused the | |
| :exc:`HTTPError`. | |
| An alias for *hdrs* attribute. | |
| .. versionadded:: 3.4 | |
| .. attribute:: fp | |
| A file-like object where the HTTP error body can be read from. | |
| .. exception:: ContentTooShortError(msg, content) | |
| This exception is raised when the :func:`~urllib.request.urlretrieve` | |
| function detects that | |
| the amount of the downloaded data is less than the expected amount (given by | |
| the *Content-Length* header). | |
| .. attribute:: content | |
| The downloaded (and supposedly truncated) data. |