工作上需要分析一些客户发过来的文件,但是实际发现文件编码很混乱,怀疑是客户也是把几个来源的内容不做转码而拼凑的,file -I 识别不了:
$ file -I logs/mv1.txt
logs/mv1.txt: text/plain; charset=unknown-8bit
用 atom 打开文件,大致如下:

写了一个函数把乱码部分提取出来,想重新编码
if __name__ == "__main__":
cont = get_content("mv1.txt")
#print cont.decode('gbk')
print cont.decode('gb2312')
但是总是提示错误:
UnicodeDecodeError: 'gb2312' codec can't decode bytes in position 0-1: illegal multibyte sequence
客户比较强势,我这边推动不了客户修改 log 文件格式,不知道大伙有解决方案么?