cpython/Doc/library/urllib.error.rst

53 lines
1.9 KiB
ReStructuredText

: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>
The :mod:`urllib.error` module defines the exception classes for exceptions
raised by :mod:`urllib.request`. The base exception class is :exc:`URLError`,
which inherits from :exc:`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
<http://www.faqs.org/rfcs/rfc2616.html>`_. 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.
.. 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.