python httplib學習筆記

2021-07-15 15:25:58 字數 1744 閱讀 7556

httplib是乙個相對底層的http請求模組,其上有專門的包裝模組例如urllib內建模組。但是封裝這個東西,越是封裝,越不靈活。urllib模組裡請求錯誤時就不會返回結果頁的內容,只有頭資訊,對於某些需要進行錯誤請求返回值檢查的場景就不適用。

class httplib.httpconnection該類用於建立乙個http型別的請求連線

httpconnection(host[, port[, strict[, timeout]]])返回乙個httpconnection物件

host:請求伺服器的host,不能帶http://

port:伺服器的web服務埠

strict:是否嚴格檢查請求的狀態行,就是http1.0/1.1 協議版本的那一行,即請求的第一行,預設為false,為true時檢查錯誤會拋異常

timeout:單次請求的超時時間,沒有時預設使用httplib模組內的全域性的超時時間。

class httplib.httpsconnetion用於建立乙個https型別的請求連線

`httpsconnection(host[, port[, key_filep[, cert_file[, strict[, timeout]]]])返回乙個httpsconnection物件

key_file:乙個包含pem格式的私鑰檔案

cert_file:乙個包含pem格式的認證檔案

httpconnection物件request方法

conn.request(method, url[, body[, headers]])

method: 請求的方式,如』get』,』post』,』head』,』put』,』delete』等

url: 請求的網頁路徑。如:』/index.html』

body: 請求是否帶資料,該引數是乙個字典

headers: 請求是否帶頭資訊,該引數是乙個字典,不過鍵的名字是指定的http頭關鍵字

無返回,其實就是相對於向服務其傳送資料,但是沒有最後回車

httpconnection物件getresponse方法

獲取乙個http響應物件, 相當於執行最後的2個回車

返回httpresponse物件。

httpconnection物件close方法

關閉指定的httpconnect連線

httpresponse物件read方法

獲得http響應的內容部分,即網頁原始碼。

body = res.read([amt])

amt: 讀取指定長度的字元,預設為空,即讀取所有內容

httpresponse物件的其他方法或屬性

getheaders()

獲得所有的響應頭內容,是乙個元組列表[(name1, value1), (name2, value2)]

getheader(name[, default])

獲得指定的頭內容

fileno()

返回socket的fileno

屬性:

msg

所有的頭資訊,和getheaders方法一樣,只不過這個是原始未處理的字串

status

當次請求的狀態

version

當次請求的http協議版本,10是http1.0, 11是http/1.1

reason

當次請求的結果的表述內容,200是ok,404是not found

python httplib模組使用

無意中發現了乙個巨牛的人工智慧教程,忍不住分享一下給大家。教程不僅是零基礎,通俗易懂,而且非常風趣幽默,像看 一樣!覺得太牛了,所以分享給大家。點這裡可以跳轉到教程。httplib是乙個相對底層的http請求模組,其上有專門的包裝模組,如urllib內建模組,goto等第三方模組,但是封裝的越高就越...

python httplib模組的使用

httplib是乙個相對底層的http請求模組,其上有專門的包裝模組,如urllib內建模組,goto等第三方模組,但是封裝的越高就越不靈活,比如urllib模組裡請求錯誤時就不會返回結果頁的內容,只有頭資訊,對於某些需要檢測錯誤請求返回值的場景就不適用,所以就得用這個模組了。說明 該類用於建立乙個...

學習學習再學習

如果乙個技能足夠複雜 比如從零學程式設計 那就不要指望讀完一本書就可以打天下。多買幾本書同類的書 因為每個作者的出發點是不一樣的,哪怕對同乙個概念都有不同的解釋說明。理解知識的重要過程之一就如牛的反芻一樣,要嚼一遍 嚥下去 再吐出來 再嚼一遍 再嚥下去 所以,既然一本書可以讀幾遍,那麼同一話題多應該...