Spider-03-使用chardet
繼續學習python爬蟲,我們經常出現解碼問題,因為所有的頁面編碼都不統一,我們使用chardet檢測頁面的編碼,儘可能的減少編碼問題的出現
網頁編碼問題解決
- 使用chardet 可以自動檢測頁面檔案的編碼格式,但是也有可能出錯
- 需要安裝chardet,
- 如果使用Anaconda環境,使用下面命令:
conda install chardet
- 如果不是,就自己手動在【PyCharm】>【file】>【settings】>【Project Interpreter】>【+】>【chardet】>【install】
具體操作截圖:
案例v2
- py03chardet.py檔案:https://xpwi.github.io/py/py%E7%88%AC%E8%99%AB/py03chardet.py
# py03chardet.py
# 使用request下載頁面,並自動檢測頁面編碼
from urllib import request
import chardet
if __name__ == '__main__':
url = 'https://jobs.zhaopin.com/CC375882789J00033399409.htm'
rsp = request.urlopen(url)
# 按住Ctrl鍵不送,同時點選urlopen,可以檢視文件,有函式的具體引數和使用方法
html = rsp.read()
cs = chardet.detect(html)
print("cs的型別:{0}".format(type(cs)))
print("監測到的cs資料:{0}".format(cs))
html = html.decode(cs.get("encoding", "utf-8"))
# 意思是監測到就使用監測到的,監測不到就使用utf-8
print("HTML頁面為:\n%s" % html)
右鍵執行,截圖如下
編碼檢測就介紹完了,最要的功能是檢測頁面的編碼,儘可能的減少編碼問題的出現
更多文章連結:Python 爬蟲隨筆
- 本筆記不允許任何個人和組織轉載