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

1.爲什麼有時候request會出現請求的內容中文亂碼

以國家統計局的[http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2016/]爲例,開發者模式打開可以看到 Conten-Type沒有指定默認的編碼。 而requests使用get請求時候,response默認使用iso-8859-1編碼對消息體進行編碼,傳送數據給客戶端。
(大部分網頁是有指定編碼的)。
在這裏插入圖片描述

2. 解決方法

1.自行設置

查看該網頁的網頁源代碼,還以上面國家統計局的連接爲例,搜索charset的編碼。然後在代碼中指定它的編碼格式,重新打印相應內容的text,這次中文就不會亂碼問題了。
在這裏插入圖片描述

res = requests.get(url, headers = header)
res.encoding = ‘gb2312’
pritn(res.text)

2.利用apparent_encoding

res = requests.get(url, headers = header)
res.encoding = res.apparent_encoding
pritn(res.text)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章