溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

在python3中使用requests解析中文頁(yè)面出現(xiàn)亂碼如何解決

發(fā)布時(shí)間:2021-03-02 15:44:49 來(lái)源:億速云 閱讀:246 作者:戴恩恩 欄目:開(kāi)發(fā)技術(shù)

本文章向大家介紹在python3中使用requests解析中文頁(yè)面出現(xiàn)亂碼如何解決的基本知識(shí)點(diǎn)總結(jié)和需要注意事項(xiàng),具有一定的參考價(jià)值,需要的朋友可以參考一下。

python可以做什么

Python是一種編程語(yǔ)言,內(nèi)置了許多有效的工具,Python幾乎無(wú)所不能,該語(yǔ)言通俗易懂、容易入門(mén)、功能強(qiáng)大,在許多領(lǐng)域中都有廣泛的應(yīng)用,例如最熱門(mén)的大數(shù)據(jù)分析,人工智能,Web開(kāi)發(fā)等。

第一部分 關(guān)于requests庫(kù)

(1) requests是一個(gè)很實(shí)用的Python HTTP客戶端庫(kù),編寫(xiě)爬蟲(chóng)和測(cè)試服務(wù)器響應(yīng)數(shù)據(jù)時(shí)經(jīng)常會(huì)用到。

(2) 其中的Request對(duì)象在訪問(wèn)服務(wù)器后會(huì)返回一個(gè)Response對(duì)象,這個(gè)對(duì)象將返回的Http響應(yīng)字節(jié)碼保存到content屬性中。

(3) 但是如果你訪問(wèn)另一個(gè)屬性text時(shí),會(huì)返回一個(gè)unicode對(duì)象,亂碼問(wèn)題就會(huì)常常發(fā)成在這里。

(4) 因?yàn)镽esponse對(duì)象會(huì)通過(guò)另一個(gè)屬性encoding來(lái)將字節(jié)碼編碼成unicode,而這個(gè)encoding屬性居然是responses自己猜出來(lái)的。

第二部分 解決方法

所以要么你直接使用content(字節(jié)碼),要么記得把encoding設(shè)置正確,比如我獲取了一段gbk編碼的網(wǎng)頁(yè),就需要以下方法才能得到正確的unicode。

import requests
url = "http://xxx.xxx.xxx"
response = requests.get(url)
response.encoding = 'gbk'
print(response.text)

以上就是小編為大家?guī)?lái)的在python3中使用requests解析中文頁(yè)面出現(xiàn)亂碼如何解決的全部?jī)?nèi)容了,希望大家多多支持億速云!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI