python的字符串編碼識別模塊(第三方庫):
官方地址: http://pypi.python.org/pypi/chardet
import chardet
import urllib
# 可根據需要,選擇不同的數據
TestData = urllib.urlopen('http://www.baidu.com/').read()
print chardet.detect(TestData)
# 運行結果:
# {'confidence': 0.99, 'encoding': 'GB2312'}
運行結果表示有99%的概率認為這段代碼是GB2312編碼方式。
import urllib
from chardet.universaldetector import UniversalDetector
usock = urllib.urlopen('http://www.baidu.com/')
# 創建一個檢測對象
detector = UniversalDetector()
for line in usock.readlines():
# 分塊進行測試,直到達到閾值
detector.feed(line)
if detector.done: break
# 關閉檢測對象
detector.close()
usock.close()
# 輸出檢測結果
print detector.result
# 運行結果:
# {'confidence': 0.99, 'encoding': 'GB2312'}
應用背景,如果要對一個大文件進行編碼識別,使用這種高級的方法,可以只讀一部,去判別編碼方式從而提高檢測速度。如果希望使用一個檢測對象檢測多個數據,在每次檢測完,一定要運行一下detector.reset()。清除之前的數據。
以上所述就是本文的全部內容了,希望大家能夠喜歡。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

