前言
在網際網路的世界裡,每個頁面都使用了編碼,但是形形色色的編碼讓我們的**何以得知其棉麻格式呢?charset將很好的解決這個問題。
1. chardet
chardet是python社www.cppcns.com區提供了乙個類庫包,方便我們在程式設計客棧**中動態檢測當前頁面或者檔案中的編碼格式資訊。介面非常的簡單和易用。
project主頁:
本地**位址:
文件主頁:
2. 使用示例
notice: 筆者使用的python 3.5 +
case 1: 檢測特定頁面的編碼格式
import chardet
import urllib.request
testdata = urllib.request.urlopen('').read()
print(chardet.detect(testdata))
輸出結果:
結果分析, 其準確率99%的概率,編碼格式為utf-8
使用說明:detect()為其關鍵方法
case 2: 增量檢測編碼格式
import urllib.request
from chardet.universaldetector import universaldetector
usock = urllib.request.urlopen('')
detector = universaldetector()
for line in usock.readlines():
detector.feed(line)
if detector.done: break
detector.close()
usock.close()
print(detector.result)
輸出結果:
說明: 為了提高**的準確性,基於dector.feed()來實現持續的資訊輸入,在資訊足夠充足之後結束資訊輸入,給出相應的**和判斷。
如果需要復用detector方法,需要進行detector.reset()進行重置,從而可以復用。
case 3: 在安裝chardet之後,可以基於命令列來檢測檔案編碼
% chardetect somefile someotherfile
somefile: windows-1252 with confidence 0.5
someotherfile: ascii with confidence程式設計客棧 1.0
在系統層面,可以直接基於命令列來進行檔案編碼檢測,非常簡單易用。
3. 總結
chardet是非常易用和功能強大的python包,相信大家在web世界中遨遊之時,肯定會用上這個chardet的。 如有問題,歡迎大家反饋給我。
本文標題: python中動態檢測編碼chardet的使用教程
本文位址:
Python中動態檢測編碼chardet的使用教程
最近利用python抓取一些網上的資料,遇到了編碼的問題。非常頭痛,幸運的是找到了解決的方法,下面這篇文章主要跟大家介紹了關於python中動態檢測編碼chardet的使用方法,需要的朋友可以參考借鑑,下面來一起看看吧。前言在網際網路的世界裡,每個頁面都使用了編碼,但是形形色色的編碼讓我們的 何以得...
Python之動態檢測編碼chardet
引言 在網際網路的世界裡,每個頁面都使用了編碼,但是形形色色的編碼讓我們的 何以得知其棉麻格式呢?charset將很好的解決這個問題。chardet是python社群提供了乙個類庫包,方便我們在 中動態檢測當前頁面或者檔案中的編碼格式資訊。介面非常的簡單和易用。project主頁 文件主頁 2.使用...
python編碼檢測模組chardet
抓取一批頁面的內容時,經常會遇到編碼型別不同的問題,經常令我們比較頭痛,python有乙個第三方的編碼檢測模組模組,可以為我們自動檢測編碼型別,並給出信心度,它檢測的返回結果形式為 它是乙個字典型別,我們可以通過字典的方式訪問結果中的值。如果採用源 安裝方法,有可能會提示缺少setuptools這個...