python检测文件编码问题

2018-06-05  本文已影响33人  _龙雀

最近处理一堆txt文件时,各种编码错误,意识到主要是文件的编码格式不统一造成的原因。使用chardet进行检测:

    with open(file_path, 'rb') as f:
        s = f.read()
        chatest = chardet.detect(s)
        print(chatest)

检测结果如下:


image.png

每一个文件的检测结果是一个字典,值分别是编码格式,置信度(又多大的概率属于该编码格式),语言类型。

但是仍然有部分文件,使用chatest判断出的的编码格式open,也会报UnicodeDecodeError 问题,这往往是因为该文件内有部分字符无法解码,可以使用errors参数忽略该信息

import codecs
f = codecs.open(file_path, 'r', encoding = 'GB2312', errors='ignore')
上一篇下一篇

猜你喜欢

热点阅读