requests物件的get和post方法都會返回乙個response物件,這個物件裡面存的是伺服器返回的所有資訊,包括響應頭,響應狀態碼等。其中返回的網頁部分會存在.content和.text兩個物件中。
.content中間存的是位元組碼 .text存的是.content編碼後的字串
一般來說 .text直接用比較方便 返回的是字串 但是有時候會解析不正常導致
返回的是一堆亂碼這時用.content.decode('utf-8')就可以使其顯示正常。
總的來說.text是現成的字串,.content還要編碼,但是.text不是所有時候顯示都正常,這是就需要用.content進行手動編碼。
對requests獲取的原始資料,有兩種獲取形式,乙個是r.content乙個是r.text。
二者的區別在於content返回的是byte型資料,而text返回的是unicode資料,也就是說text對原始資料進行的特殊的編碼,而這個編碼方式是基於對原始資料的猜測(響應頭),
text一般用於返回的文字
content的一般用於對返回的其他資料型別
但是對於某些**的中文用text可能會導致返回亂碼,所以最好是使用content然後自己進行重新編碼。
最終結論是:text 返回的是unicode 型的資料,一般是在網頁的header中定義的編碼形式。
content返回的是bytes,二級制型的資料。
也就是說你如果想要提取文字就用text
但是如果你想要提取、檔案,就要用到content
舉例說明:
GET和POST區別和用法 ContentType
很多人都分不清get與post的區別,以及什麼時候用get?什麼時候用post?get和post兩種方法都是將資料送到伺服器,但你該用哪一種呢?http標準包含這兩種方法是為了達到不同的目的。post用於建立資源,資源的內容會被編入http請示的內容中。例如,處理訂貨表單 在資料庫中加入新資料行等。...
ASP 的Content控制項
contentplaceholderid globalcontent runat server 其中 contentplaceholderid是masterpage中 的id值 可見content控制項不是單獨存在的,它是和 contentplaceholder 控制項一起同時存在,而 conten...
關於content的理解
context字面意思上下文,位於framework packageandroid.content.context中,其實該類為long型,類似win32中的handle控制代碼,很多方法需要通過 context才能識別呼叫者的實 例,比如說toast的第乙個引數就是context,一般在activ...