python request处理_python requests异常处理

requests的所有异常归类:

IOError

RequestException

HTTPError(RequestException)

UnrewindableBodyError(RequestException)

RetryError(RequestException)

ConnectionError(RequestException)

ProxyError(ConnectionError)

SSLError(ConnectionError)

ConnectTimeout(ConnectionError, Timeout)

Timeout(RequestException)

ReadTimeout

URLRequired(RequestException)

TooManyRedirects(RequestException)

MissingSchema(RequestException, ValueError)

InvalidSchema(RequestException,ValueError)

InvalidURL(RequestException,ValueError)

InvalidHeader(RequestException,ValueError)

ChunkedEncodingError(RequestException)

StreamConsumedError(RequestException,TypeError)

ContentDecodingError(RequestException,BaseHTTPError)

RequestsWarning(Warning)

FileModeWarning(RequestsWarning, DeprecationWarning)

[docs]classRequestException(IOError):

"There was an ambiguous exception that occurred while handling yourrequest."

class

HTTPError

(

RequestException

):

"""An HTTP error occurred."""

[docs]

class

ConnectionError

(

RequestException

):

"""A Connection error occurred."""

classProxyError(ConnectionError):

"""A proxy error occurred."""

classSSLError(ConnectionError):

"""An SSL error occurred."""

[docs]

class

Timeout

(

RequestException

):

"""The request timed out.

Catching this error will catch both

:exc:`~requests.exceptions.ConnectTimeout` and

:exc:`~requests.exceptions.ReadTimeout` errors.

"""

classConnectTimeout(ConnectionError,Timeout):

[docs]\

"""The request timed out while trying to connect to the

remote server.

Requests that produced this error are safe to retry.

"""

[docs]

class

ReadTimeout

(

Timeout

):

"""The server did not send any data in the allotted amount of time."""

[docs]

class

URLRequired

(

RequestException

):

"""A valid URL is required to make a request."""

[docs]

class

TooManyRedirects

(

RequestException

):

"""Too many redirects."""

classMissingSchema(RequestException,ValueError):

"""The URL schema (e.g. http or https) is missing."""

classInvalidSchema(RequestException,ValueError):

"""See defaults.py for valid schemas."""

classInvalidURL(RequestException,ValueError):

"""The URL provided was somehow invalid."""

classInvalidHeader(RequestException,ValueError):

"""The header value provided was somehow invalid."""

classInvalidProxyURL(InvalidURL):

"""The proxy URL provided is invalid."""

classChunkedEncodingError(RequestException):

"""The server declared chunked encoding but sent an invalid chunk."""

classContentDecodingError(RequestException,BaseHTTPError):

"""Failed to decode response content"""

classStreamConsumedError(RequestException,TypeError):

"""The content for this response was already consumed"""

classRetryError(RequestException):

"""Custom retries logic failed"""

classUnrewindableBodyError(RequestException):

"""Requests encountered an error when trying to rewind a body"""

# Warnings

classRequestsWarning(Warning):

"""Base warning for Requests."""

pass

classFileModeWarning(RequestsWarning,DeprecationWarning):

"""A file was opened in text mode, but Requests determined its binary length."""

pass

classRequestsDependencyWarning(RequestsWarning):

"""An imported dependency doesn't match the expected version range."""

pass