python处理中文文本

最近遇到一个问题,要处理一堆中文文本,这些中文文本在同一个文件夹中,编码格式各不相同。我用codecs的时候需要指定文件的编码格式,这个时候就不是那么好用了。

搜来搜去,发现python-magic这个库可以完成我的任务。

首先安装python-magic

pip install python-magic

然后我们可以处理这个文件夹了

# -*- coding= utf-8 -*-
import codecs as cs
import os

for p, d, fs in os.walk('test'):
    for f in fs:
        blob = open(os.path.join(p, f)).read()
        m = magic.Magic(mime_encoding=True)
        encoding = m.from_buffer(blob)
        if encoding == 'utf_16be':
            encoding = 'utf_16_be'
        ......
        with cs.open(os.path.join(p, f), 'r', encoding):
            some operations
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Python 二三事 面向初学者介绍Python相关的一些工具,以及可能遇到的常见问题。 最后更新 2013.5....
    hzyido阅读 67,790评论 2 42
  • 引言 在这里我假设你已经看完了一篇Python教程,基本熟悉了Python的结构和语法,在命令行下的Python互...
    Programmer客栈阅读 65,140评论 0 17
  • (这是很早之前写的但内容没有太过时,发到这边补全一下...)面向初学者介绍Python相关的一些工具,以及可能遇到...
    jagttt阅读 67,342评论 3 44
  • 如果说前二个咖啡馆都不算真正意义上的咖咖啡馆,那开在新世界国贸大厦写字楼的才算第一间真正的参差咖啡馆,名字...
    秀丽有约阅读 295评论 2 12
  • 是谁剥夺了我们生产的乐趣? 你还会生产吗?除了工作,你下过厨房吗?除了旅游,你体验过耕种吗?过去我们有自己土地、田...
    元子丰丰阅读 250评论 0 0