requests亂碼問題

2022-05-11 18:22:48 字數 759 閱讀 9693

有三種方法解決請求後亂碼問題。

url='

'r =requests.get(url)

html=r.content

html_doc=str(html,'

utf-8

') #

html_doc=html.decode("utf-8","ignore")

print(html_doc)

requests 會自動解碼來自伺服器的內容。大多數 unicode 字符集都能被無縫地解碼。請求發出後,requests 會基於 http 頭部對響應的編碼作出有根據的推測。當你訪問 r.text 之時,requests 會使用其推測的文字編碼。你可以找出 requests 使用了什麼編碼,並且能夠使用 r.encoding 屬性來改變它.

但是requests庫的自身編碼為: r.encoding = 『iso-8859-1』

可以 r.encoding 修改編碼

url='

'r=requests.get(url)

r.encoding='

utf-8

'print(r.text)

import

requests

url='

'r=requests.get(url)

print

print(r.text)

參考文章:

***************不積跬步無以至千里***************

requests 中文亂碼

由於 requests 庫的簡潔與強大,正在被大量使用,目前我也在使用,並逐漸喜歡上它。但有時會出現中文亂碼問題,需要進行解決。result requests.get result text result.text以上述語句獲得頁面內容時很有可能會出現亂碼,原因是 result.text 返回的是u...

爬蟲requests解析後中文亂碼問題

在使用requests爬蟲後解析網頁時總會出現中文亂碼問題。比如 如下亂碼 解決辦法就是 encode latin1 decode gbk 時莊衛生院 python2的話 在字串前面加乙個 u 宣告他是unicode就行 如果不行,請看一下在指令碼第一行是否有如下 encoding utf 8 這種...

requests請求返回內容 中文亂碼問題

以國家統計局的 為例,開發者模式開啟可以看到 conten type沒有指定預設的編碼。而requests使用get請求時候,response預設使用iso 8859 1編碼對訊息體進行編碼,傳送資料給客戶端。大部分網頁是有指定編碼的 檢視該網頁的網頁源 還以上面國家統計局的連線為例,搜尋chars...