python中requests爬去網(wǎng)頁內(nèi)容出現(xiàn)亂碼問題解決方法介紹
最近在學(xué)習(xí)python爬蟲,使用requests的時(shí)候遇到了不少的問題,比如說在requests中如何使用cookies進(jìn)行登錄驗(yàn)證,這可以查看這篇文章。這篇博客要解決的問題是如何避免在使用requests的時(shí)候出現(xiàn)亂碼。
import requests res=requests.get("https://www.baidu.com") print res.content
以上就是使用requests進(jìn)行簡單的網(wǎng)頁請求數(shù)據(jù)的方式。但是很容易出現(xiàn)亂碼的問題。
我們可以通過在網(wǎng)頁上右擊查看源代碼中查看編碼方式:content="text/html;charset=utf-8"->
我們便可以知道網(wǎng)頁的編碼方式是utf8.由于中文的編碼方式為gbk,所以我們需要將編碼方式改變?yōu)間bk。
我查看了一些資料,說requests可以自動(dòng)獲取網(wǎng)頁的編碼方式的,并且通過res.encode輸出一看是utf8,是的 沒錯(cuò)。但是輸出來的內(nèi)容中文存在亂碼。 有說可以直接指定獲取到內(nèi)容的encode屬性即可,"res.encode='gbk'",但我嘗試了不可以的。
python內(nèi)部的編碼方式為utf8,也就是說python在處理其他字符串內(nèi)容的時(shí)候首先要先將內(nèi)容轉(zhuǎn)化為utf8的編碼方式,然后在解碼為你想要的編碼方式輸出。
例如s=”中文” 為str類型的字符串 編碼方式為gb2312
需要 s.decode("gb2312")將gb2312編碼方式的內(nèi)容解碼為Unicode編碼
然后輸出的時(shí)候要將s的編碼方式規(guī)定為gbk->s.encode("gbk")
言歸正傳,我們獲取到網(wǎng)頁內(nèi)容res后, 通過res.content.decode("utf8","ignore").encode("gbk","ignore")就不會有亂碼了。
這里所使用的ignore屬性意思是忽略其中有一場的編碼,僅顯示有效的編碼。
總結(jié)
以上就是本文關(guān)于python中requests爬去網(wǎng)頁內(nèi)容出現(xiàn)亂碼問題解決方法的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:python編程之requests在網(wǎng)絡(luò)請求中添加cookies參數(shù)方法詳解、Python_LDA實(shí)現(xiàn)方法詳解等,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
Python中Word文件自動(dòng)化操作小結(jié)
Python-docx是一個(gè)Python庫,提供了對Microsoft?Word(.docx文件)的讀寫和修改功能,本文主要介紹了如何使用Python-docx實(shí)現(xiàn)Word文件自動(dòng)化操作,需要的可以參考下2024-04-04python開發(fā)之tkinter實(shí)現(xiàn)圖形隨鼠標(biāo)移動(dòng)的方法
這篇文章主要介紹了python開發(fā)之tkinter實(shí)現(xiàn)圖形隨鼠標(biāo)移動(dòng)的方法,涉及Python基于tkinter繪圖的相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11實(shí)例講解Python爬取網(wǎng)頁數(shù)據(jù)
這篇文章給大家通過實(shí)例講解了Python爬取網(wǎng)頁數(shù)據(jù)的步驟以及操作過程,有興趣的朋友跟著學(xué)習(xí)下吧。2018-07-07Python實(shí)現(xiàn)ping指定IP的示例
今天小編就為大家分享一篇Python實(shí)現(xiàn)ping指定IP的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06刪除DataFrame中值全為NaN或者包含有NaN的列或行方法
今天小編就為大家分享一篇?jiǎng)h除DataFrame中值全為NaN或者包含有NaN的列或行方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11python random從集合中隨機(jī)選擇元素的方法
今天小編就為大家分享一篇python random從集合中隨機(jī)選擇元素的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01