编码格式检测chardet模块
Posted shaozheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编码格式检测chardet模块相关的知识,希望对你有一定的参考价值。
chardet模块:
--》检测编码格式
未知编码的bytes,要把它转换成str,就需要知道该bytes的编码方式
#1.直接检测bytes
>>> chardet.detect(b'Hello, world!')
{'encoding': 'ascii', 'confidence': 1.0, 'language': ''}
检测出的编码是ascii,confidence字段,表示检测的概率是1.0(即100%)
#2.检测GBK编码的中文
>>> data = '离离原上草,一岁一枯荣'.encode('gbk')
>>> chardet.detect(data)
{'encoding': 'GB2312', 'confidence': 0.7407407407407407, 'language': 'Chinese'}
检测的编码是GB2312,注意到GBK是GB2312的超集,两者是同一种编码,检测正确的概率是74%,language字段指出的语言是'Chinese'。
以上是关于编码格式检测chardet模块的主要内容,如果未能解决你的问题,请参考以下文章
使用chardet模块获取文件的编码格式,进而正确的读取文件内容
python3.6使用chardet模块总是报错ValueError: Expected a bytes object, not a unicode object