1. 程式人生 > >Python-網絡爬蟲模塊-requests模塊之響應-response

Python-網絡爬蟲模塊-requests模塊之響應-response

返回 方法 sed ons 網絡 limit 數據 響應頭 args

當requests發送請求成功後,requests就會得到返回值,如果服務器響應正常,就會接收到響應數據;

Response響應中的屬性和方法

常用屬性:

  • status_code:

數據類型:int

作用:返回HTTP響應的狀態碼:200、404、500、等

  • reason:

數據類型:str

作用:返回HTTP響應的描述:OK、Not Found、等

  • headers:

數據類型:字典

作用:返回HTTP響應頭

  • url:

數據類型:str

作用:請求的真實地址

  • history:

數據類型:列表(數組)

作用:訪問歷史記錄(重定向記錄)

  • encoding

數據類型:str

作用:HTTP響應頭中的編碼字段,response.text 取反回值時,就是根據這個字段進行解碼的,如果沒有,則按:"ISO-8859-1"解碼

  • cookies

數據類型:RequestsCookieJar

作用:獲取cookie

  • elapsed  

    類型:datetime.timedelta

    作用:發送請求到接收到響應所花費的時長

  • request

類型:requests.models.PreparedRequest

作用:對應的請求對象

  • raw

    作用:原始響應體,也就是 urllib 的 HTTPResponse 對象,使用 response.raw.read() 讀取

常用方法

@property類型方法:

  • ok(self):狀態碼是否小於400,返回值為True或False
  • apparent_encoding(self):根據返回內容, 解析出來的字符編碼
  • content(self):原始響應體
  • text(self):經過編碼後的文本內容

普通方法:

  • json(self, **kwargs):轉換成json格式的數據
  • iter_content(self, chunk_size=1, decode_unicode=False):按字節分塊的叠代器
  • iter_lines(self, chunk_size=ITER_CHUNK_SIZE, decode_unicode=None, delimiter=None):按行分塊的叠代器
  • raise_for_status(self):拋出狀態異常錯誤
  • close(self):關閉連接(叠代器獲取數據時,其實就是建立了長鏈接)

requests響應返回部分的方法和屬性內容大概就這麽多把

Python-網絡爬蟲模塊-requests模塊之響應-response