Python 3.6.5 Documentation >  "urllib.error" — Exception classes raised by urllib.request

"urllib.error" — Exception classes raised by urllib.request
***********************************************************

**Source code:** Lib/urllib/error.py

======================================================================

The "urllib.error" module defines the exception classes for exceptions
raised by "urllib.request". The base exception class is "URLError".

The following exceptions are raised by "urllib.error" as appropriate:

exception urllib.error.URLError

The handlers raise this exception (or derived exceptions) when they
run into a problem. It is a subclass of "OSError".

reason

The reason for this error. It can be a message string or
another exception instance.

Changed in version 3.3: "URLError" has been made a subclass of
"OSError" instead of "IOError".

exception urllib.error.HTTPError

Though being an exception (a subclass of "URLError"), an
"HTTPError" can also function as a non-exceptional file-like return
value (the same thing that "urlopen()" returns). This is useful
when handling exotic HTTP errors, such as requests for
authentication.

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 "http.server.BaseHTTPRequestHandler.responses".

reason

This is usually a string explaining the reason for this error.

headers

The HTTP response headers for the HTTP request that caused the
"HTTPError".

New in version 3.4.

exception urllib.error.ContentTooShortError(msg, content)

This exception is raised when the "urlretrieve()" function detects
that the amount of the downloaded data is less than the expected
amount (given by the *Content-Length* header). The "content"
attribute stores the downloaded (and supposedly truncated) data.