urllib.error --- urllib.request 引發的例外類別

原始碼:Lib/urllib/error.py


urllib.error module(模組)為 urllib.request 所引發的例外定義了例外 (exception) 類別。基礎例外類別是 URLError

下列例外會被 urllib.error 適時引發:

exception urllib.error.URLError

處理程式 (handler) 在遇到問題時會引發此例外(或其衍生例外)。它是 OSError 的一個子類別。

reason

此錯誤的原因。它可以是一個訊息字串或另一個例外實例。

在 3.3 版的變更: URLError 過去是 OSError 的子類別,但現在為 OSError 的別名。

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

雖然是一個例外(URLError 的一個子類別),HTTPError 也可以作為一個非例外的類檔案回傳值(與 urlopen() 所回傳的物件相同)。這適用於處理特殊 HTTP 錯誤,例如為請求認證。

url

包含請求 URL。filename 屬性的別名。

code

一個 HTTP 狀態碼,具體定義見 RFC 2616。這個數值會對應到存放在 http.server.BaseHTTPRequestHandler.responses 程式碼 dictionary 中的某個值。

reason

這通常是一個解釋本次錯誤原因的字串。為 msg 屬性的別名。

headers

導致 HTTPError 的特定 HTTP 請求的 HTTP 回應 header。為 hdrs 屬性的別名。

在 3.4 版新加入.

fp

一個類檔案物件,可以從中讀取 HTTP 錯誤主體 (body)。

exception urllib.error.ContentTooShortError(msg, content)

此例外會在 urlretrieve() 函式檢查到已下載的資料量小於期待的資料量(由 Content-Length header 給定)時被引發。

content

已下載(可能已被截斷)的資料。