小編給大家分享一下怎么用res函數(shù)解決python爬蟲的中文亂碼,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
我們知道Requests 會基于 HTTP 頭部對響應的編碼作出有根據的推測。當你訪問 r.text 之時,Requests 會使用其推測的文本編碼。你可以找出 Requests 使用了什么編碼,并且能夠使用r.encoding 屬性來改變它。接下來,我們一起通過resquests的一些用法,來看看Requests 會基于 HTTP 頭部對響應的編碼方式。
print(res.encoding) #查看網頁返回的字符集類型 print(res.apparent_encoding) #自動判斷字符集類型
輸出結果為:
可以發(fā)現(xiàn)Requests 推測的文本編碼(也就是網頁返回即爬取下來后的編碼轉換)與源網頁編碼不一致,由此可知其正是導致亂碼原因。
解決方法
根據原因來找解決方法,就非常簡單了。
方法一:直接指定res.encoding
import requests url = "http://search.51job.com" res = requests.get(url) res.encoding = "gbk" html = res.text print(html)
方法二:通過res.apparent_encoding屬性指定
import requests url = "http://search.51job.com" res = requests.get(url) res.encoding = res.apparent_encoding html = res.text print(html)
看完了這篇文章,相信你對怎么用res函數(shù)解決python爬蟲的中文亂碼有了一定的了解,想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
分享名稱:怎么用res函數(shù)解決python爬蟲的中文亂碼-創(chuàng)新互聯(lián)
URL網址:http://www.chinadenli.net/article0/ipoio.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站維護、響應式網站、用戶體驗、動態(tài)網站、搜索引擎優(yōu)化、外貿建站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)