从大量pdf文件中提取数据到Excel中,用python还是用VBA?
在上一家公司工作时同事提过类似的需求,我用VBA取巧解决的
上百张从系统中导出的PDF格式发票,名字都是乱码,需要重命名成发票中的公司名
当时上网查了一下,发现需要调用acrobat控件
我尝试了一下,没有成功,因为公司的电脑只装了Adobe Reader PDF,没装Adobe Acrobat
但同事还在那眼巴巴的等着,不能让她失望
【从大量pdf文件中提取数据到Excel中,用python还是用VBA?】 我点了下PDF阅读器的“文件”选项卡,发现有另存为的功能!可以将PDF另存为txt
挑了几个发票文件,发现另存后公司名都在同一行,且发票中的文本数据都在txt中
然后一切就简单了
用VBA遍历并打开PDF文件
模拟键盘的快捷键将文件另存为txt
遍历TXT文件,打开后提取指定行的数据,给原PDF文件重命名
当然,因为是模拟键盘的操作,运行时不能按鼠标键盘,有时还会漏掉一两个文件
不过因为是重命名操作,一眼就能看出来,手动改也花不了几秒钟
那次最重要的发现就是利用Adobe Reader PDF将PDF另存为TXT了,不过我感觉还是用acrobat比较靠谱
■网友
【PDFelement 6 专业版】支持批量提取 PDF 文件中的数据。
表单填写和数据提取一直都是PDFelement 6引以为傲的功能。对于中小型企业,在处理财务报表或者税单、发票时,经常遇到表单归档和数据录入的问题, PDFelement 6 完美的解决了这个需求。PDFelement 6 支持自动识别可填写表单域,无需转换格式,即可直接填写。另外,你还可以设计自己喜欢表格形式,软件里可以创建自己需要的表单选项形式,比如:文本字段,复选框,单选按钮,组合框,列表框,按钮或签名域。
如果从原生 PDF 文档中提取数据,只需点击“数据提取”即可将表单的交互区域里的数据批量提取到Excel表格里,方便报告和分析。
如果遇到扫描版PDF文件,也不用担心,PDFelement 6 专业版里选定要提取数据的区域,执行OCR,即可提取出来。 

细节查看文章: 干货帖 | 各种PDF表单的疑难杂症怎么解决?
更多 PDF 相关干货,欢迎关注专栏:PDF 应用技巧
? 如何隐藏 PDF 里的秘密?|密文功能
? 进阶教程 | PDF 高级玩家教你这几个实用操作
? 如何一键转换PDF成Word、Excel、PPT文件
? PDF 应用评测:Adobe Acrobat VS PDF Expert VS PDFelement
? 「革命」你的 PDF 阅读编辑体验 - iOS 端 PDFelement 限免
? 一款 PDF 软件需要具备多少个注释工具才合适?
? Adobe Acrobat XI 和Reader XI 将终止维护,企业用户何去何从?
? Preview 预览真的能解决你的 PDF 需求吗?
? 干货帖 | 各种PDF表单的疑难杂症怎么解决?
? PDFelement 与 PDF Expert,谁更胜一筹?
■网友
试试finereader abbyy出品的 来自俄罗斯的神器,主打光符识别
■网友
我试过用Excel vba去实现这个功能,但是有一点不确定是否会符合你的要求,首先呢吧这2000多份的pdf全部转成excel.然后作为总表,相信这个总表会非常的乱,但没关系可用VBA处理这些数据。宏的强大足以吧乱的原始数据整理好。通过一些关键词去寻找你要的数据就好。
推荐阅读
- 它浑身是毒,入侵我国却被大量种植,如今年产量高达55万吨
- 白皮书一般是政府发布的正式报告或文件,那么现在物联网、智慧城市等热门领域这么多企业发布的白皮书算咋回事呢
- hadoop中的mapreduce链接(mapreduce chaining)怎样避免中间文件的产生
- 怎样防止U盘内的文件被复制
- 可不可能利用网盘的秒传功能使用伪造的MD5(或其他信息)值进行文件分享
- windows资源管理器无法浏览部分安卓手机内文件
- 汽车市场|「数据报告」比亚迪外供底盘数量激增,大量车企同时配套比亚迪电池电机
- 单例模式static函数必须在头文件中实现么
- 为啥我无法保存一个网页的完整html文件
- windows 7怎样使文件系统区分大小写
