BaseHandler objects provide a couple of methods that are
directly useful, and others that are meant to be used by derived
classes. These are intended for direct use:
This method is not defined in BaseHandler, but
subclasses should define it if they want to catch all URLs.
This method, if implemented, will be called by the parent
OpenerDirector. It should return a file-like object as
described in the return value of the open() of
OpenerDirector, or None. It should raise
URLError, unless a truly exceptional thing happens (for
example, MemoryError should not be mapped to
URLError).
This method will be called before any protocol-specific open method.
protocol_open(req)
This method is not defined in BaseHandler, but
subclasses should define it if they want to handle URLs with the given
protocol.
This method, if defined, will be called by the parent
OpenerDirector. Return values should be the same as for
default_open().
This method is not defined in BaseHandler, but
subclasses should define it if they want to catch all URLs with no
specific registered handler to open it.
This method, if implemented, will be called by the parentOpenerDirector. Return values should be the same as for
default_open().
This method is not defined in BaseHandler, but
subclasses should override it if they intend to provide a catch-all
for otherwise unhandled HTTP errors. It will be called automatically
by the OpenerDirector getting the error, and should not
normally be called in other circumstances.
req will be a Request object, fp will be a
file-like object with the HTTP error body, code will be the
three-digit code of the error, msg will be the user-visible
explanation of the code and hdrs will be a mapping object with
the headers of the error.
Return values and exceptions raised should be the same as those
of urlopen().
nnn should be a three-digit HTTP error code. This method is
also not defined in BaseHandler, but will be called, if it
exists, on an instance of a subclass, when an HTTP error with code
nnn occurs.
Subclasses should override this method to handle specific HTTP
errors.
Arguments, return values and exceptions raised should be the same as
for http_error_default().