在Python中进行编码检测,是否使用chardet库?

2024-05-15 11:01:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在写一个应用程序,需要一些大量的文本作为输入,可以在任何字符编码,我想把它都保存在UTF-8。我不会或不能信任数据定义的字符编码(如果有的话)。

我曾经使用Pythons库chardet检测原始字符编码http://pypi.python.org/pypi/chardet,但是最近遇到了一些问题,我注意到它不支持斯堪的纳维亚编码(例如iso-8859-1)。 除此之外,获得结果还需要大量的时间/CPU/mem。一个2兆的文本文件大约40秒。

我试着使用标准的Linux文件

file -bi name.txt

到目前为止,我所有的文件都给了我100%的结果。对于一个2 MB的文件,这个值大约为0.1秒。它也支持斯堪的纳维亚字符编码。

所以,我想使用文件的好处是显而易见的。缺点是什么?我遗漏了什么吗?


Tags: 文件数据org文本pypi应用程序http编码