由于工作需要,要从几百个文件中提取文字信息(指定几个文字,判断文件中有没有),思路有两种:1.手工看、统计 2.程序。知道Python在处理这些数据上功能非常强大,大概查了一下,Python直接读取doc、pdf文件比较麻烦,读取txt相对容易的多,于是打算先将文件统一转化为txt,然后读取txt,并将结果输出在一个csv或excel中。
经查阅资料,文件转化大体有两种方式:1.使用工具转,较好的工具有All Office Converter Platinum(收费)、迅捷PDF转换器(收费);2.自己写程序转化。不过小编发现这两种转化方式都无法将图片转换到txt,所以会有缺损。
工具转化比较简单,下载安装工具,简单操作就能实现。下面着重介绍使用程序转化,主要分三步:
(1)将doc、docx、wps转换成txt
这一步注意点:改程序需要安装win32com Python包,小编试着在cmd中用pip安装和在pycharm中安装都没有成功,只能去网上找exe安装文件,官方下载,下载时要看自己装的Python版本和位数 。
查看Python位数
查看需要安装的版本
(2)将pdf(包括加密的pdf)转为txt
这一步骤中,用到了一个解密pdf的插件qpdf,下载地址,程序使用时要将代码的qpdf的exe文件路径换成自己的路径。
(3)读取转化好的txt文件夹、输出结果到csv文件
这一步主要用的是正则表达式,没啥技术含量,大家自己学习下。下面是过程中的部分截图,仅供产考。
doc转换成功控制台打印日志
pdf转换成功控制台打印日志
输出结果
代码地址: