前言
Python中有許多好用、有意思的庫,有一些可以大大提高開發效率,有的可以為我們解決很多棘手的問題,從今天開始我會每天給大家分享一個Python庫。今天分享的是一個跟字串編碼有關的庫—chardet
Chardet
簡介
chardet是一個識別字串編碼的第三方庫,支援繁簡中文、日語、韓文等多種語言
安裝
使用
pip
進行安裝$ pip install chardet
通過安裝Anaconda進行安裝,由於Anaconda中已經幫我們安裝了chardet,可以直接使用
簡單使用
識別字串格式
>>> import chardet >>> chardet.detect(b'Hello chardet!') {'encoding': 'ascii', 'confidence': 1.0, 'language': ''}
返回的結果中,
encoding
對應的鍵為編碼型別,confidence
對應的鍵為識別可信度為1,即為100%,language
對應的鍵為語言,這裡沒有檢測出來識別中文格式
>>> chardet.detect('你好'.encode('utf-8')) >>> {'encoding': 'utf-8', 'confidence': 0.7525, 'language': ''}
這次可以看到檢測出了編碼型別為utf-8,可信度為75.25%,從這裡可以看出檢測中文的準確率沒有那麼高
對外語進行檢測
>>> chardet.detect('こんにちは'.encode('euc-jp')) >>> {'encoding': 'EUC-JP', 'confidence': 0.99, 'language': 'Japanese'}
對日語的檢測可信度為99%且成功檢測出來了語言
作用
前面介紹了一下chardet
庫,與其簡單的使用方法,那我們什麼場景可以使用它呢,我舉一個例子:當我們從網頁爬取一段內容後,不清楚編碼型別,就可以使用chardet
庫來進行檢測,然後將不同的型別轉化為utf-8
來進行後續操作。還有其他使用場景歡迎大家補充!
尾巴
從上可以看出,chardet
庫非常的簡單易用,核心目的也比較明確:檢測字串編碼型別。以後在字串編碼不清楚的時候可以使用chardet
庫,而不是自己去試,可以大大提高開發效率。
本作品採用《CC 協議》,轉載必須註明作者和本文連結