urllib.error --- urllib.request 引发的异常类

源代码: Lib/urllib/error.py


urllib.error 模块为 urllib.request 所引发的异常定义了异常类。 基础异常类是 URLError

下列异常会被 urllib.error 按需引发:

exception urllib.error.URLError

处理程序在遇到问题时会引发此异常(或其派生的异常)。 它是 OSError 的一个子类。

reason

此错误的原因。 它可以是一个消息字符串或另一个异常实例。

在 3.3 版更改: URLError 已被设为 OSError 而不是 IOError 的子类。

exception urllib.error.HTTPError(url, code, msg, hdrs, fp)

虽然是一个异常(URLError 的一个子类),HTTPError 也可以作为一个非异常的文件类返回值(与 urlopen() 返所回的对象相同)。 这适用于处理特殊 HTTP 错误例如作为认证请求的时候。

url

Contains the request URL. An alias for filename attribute.

code

一个 HTTP 状态码,具体定义见 RFC 2616。 这个数字的值对应于存放在 http.server.BaseHTTPRequestHandler.responses 代码字典中的某个值。

reason

This is usually a string explaining the reason for this error. An alias for msg attribute.

headers

The HTTP response headers for the HTTP request that caused the HTTPError. An alias for hdrs attribute.

3.4 新版功能.

fp

A file-like object where the HTTP error body can be read from.

exception urllib.error.ContentTooShortError(msg, content)

此异常会在 urlretrieve() 函数检测到已下载的数据量小于期待的数据量(由 Content-Length 头给定)时被引发。 content 属性中将存放已下载(可能被截断)的数据。