43. Python 字符编码判断

Par @Martin dans le
Tags :

使用 chardet 可以很方便的实现字符串/文件的编码检测, 尤其是中文网页, 有的页面使用 GBK/GB2312, 有的使用 UTF-8, 如果你需要去爬一些页面, 知道网页编码很重要的.

import chardet
chardet.detect('待检测变量')


返回结果:

{'confidence': 0.98999999999999999, 'encoding': 'GB2312'}


chardet 可以直接用 detect 函数来检测所给字符的编码, 函数返回值为字典, 有 2 个元素, 一个是检测的可信度, 另外一个就是检测到的编码.

如果报下面的错误:

Expected a bytes object, not a unicode object


说明待检测变量是一个 unicode 对象, 没有被编码过 (即 u'xxx') 这种.