mirror of https://github.com/python/cpython
gh-101100: Fix references to ``URLError`` and ``HTTPError`` in ``howto/urllib2.rst`` (#107966)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
This commit is contained in:
parent
8898a8683b
commit
bfd94ab9e9
|
@ -194,11 +194,11 @@ which comes after we have a look at what happens when things go wrong.
|
|||
Handling Exceptions
|
||||
===================
|
||||
|
||||
*urlopen* raises :exc:`URLError` when it cannot handle a response (though as
|
||||
*urlopen* raises :exc:`~urllib.error.URLError` when it cannot handle a response (though as
|
||||
usual with Python APIs, built-in exceptions such as :exc:`ValueError`,
|
||||
:exc:`TypeError` etc. may also be raised).
|
||||
|
||||
:exc:`HTTPError` is the subclass of :exc:`URLError` raised in the specific case of
|
||||
:exc:`~urllib.error.HTTPError` is the subclass of :exc:`~urllib.error.URLError` raised in the specific case of
|
||||
HTTP URLs.
|
||||
|
||||
The exception classes are exported from the :mod:`urllib.error` module.
|
||||
|
@ -229,12 +229,12 @@ the status code indicates that the server is unable to fulfil the request. The
|
|||
default handlers will handle some of these responses for you (for example, if
|
||||
the response is a "redirection" that requests the client fetch the document from
|
||||
a different URL, urllib will handle that for you). For those it can't handle,
|
||||
urlopen will raise an :exc:`HTTPError`. Typical errors include '404' (page not
|
||||
urlopen will raise an :exc:`~urllib.error.HTTPError`. Typical errors include '404' (page not
|
||||
found), '403' (request forbidden), and '401' (authentication required).
|
||||
|
||||
See section 10 of :rfc:`2616` for a reference on all the HTTP error codes.
|
||||
|
||||
The :exc:`HTTPError` instance raised will have an integer 'code' attribute, which
|
||||
The :exc:`~urllib.error.HTTPError` instance raised will have an integer 'code' attribute, which
|
||||
corresponds to the error sent by the server.
|
||||
|
||||
Error Codes
|
||||
|
@ -317,7 +317,7 @@ dictionary is reproduced here for convenience ::
|
|||
}
|
||||
|
||||
When an error is raised the server responds by returning an HTTP error code
|
||||
*and* an error page. You can use the :exc:`HTTPError` instance as a response on the
|
||||
*and* an error page. You can use the :exc:`~urllib.error.HTTPError` instance as a response on the
|
||||
page returned. This means that as well as the code attribute, it also has read,
|
||||
geturl, and info, methods as returned by the ``urllib.response`` module::
|
||||
|
||||
|
@ -338,7 +338,7 @@ geturl, and info, methods as returned by the ``urllib.response`` module::
|
|||
Wrapping it Up
|
||||
--------------
|
||||
|
||||
So if you want to be prepared for :exc:`HTTPError` *or* :exc:`URLError` there are two
|
||||
So if you want to be prepared for :exc:`~urllib.error.HTTPError` *or* :exc:`~urllib.error.URLError` there are two
|
||||
basic approaches. I prefer the second approach.
|
||||
|
||||
Number 1
|
||||
|
@ -365,7 +365,7 @@ Number 1
|
|||
.. note::
|
||||
|
||||
The ``except HTTPError`` *must* come first, otherwise ``except URLError``
|
||||
will *also* catch an :exc:`HTTPError`.
|
||||
will *also* catch an :exc:`~urllib.error.HTTPError`.
|
||||
|
||||
Number 2
|
||||
~~~~~~~~
|
||||
|
@ -391,7 +391,7 @@ Number 2
|
|||
info and geturl
|
||||
===============
|
||||
|
||||
The response returned by urlopen (or the :exc:`HTTPError` instance) has two
|
||||
The response returned by urlopen (or the :exc:`~urllib.error.HTTPError` instance) has two
|
||||
useful methods :meth:`info` and :meth:`geturl` and is defined in the module
|
||||
:mod:`urllib.response`..
|
||||
|
||||
|
|
Loading…
Reference in New Issue