PDF信息批量提取至Excel
在学院做助管时,某老师布置了任务:将1000+个PDF文件的指定内容整理到一个Excel中。为了防止在逐个打开复制粘贴的过程中猝死,尝试编写代码简化此问题。实现的功能主要是将每个PDF的信息分别提取到Excel中的每一行。
需要的模块比较少。
import os
import pdfplumber #解析pdf文件,尤其带有表格的文件
from openpyxl import Workbook #读写Excel的文件
提取PDF信息的函数。
def parse(pdf):targets = [] #保存结果,for page in pdf.pages: words = page.extract_words(x_tolerance=5)for word in words:targets.append(word['text'])return targets#print(targets)
导出至Excel的函数。
def save(targets, out_path, number, sheet_name='targets'):ws.title = sheet_namews._current_row=numberws.append(targets)print(ws)#ws.append(list(targets.values()))wb.save(out_path)
PDF遍历函数。
def pdfFilesPath(path):'''path: 目录文件夹地址返回值:列表,pdf文件全路径'''filePaths = [] # 存储目录下的所有文件名,含路径for root,dirs,files in os.walk(path):for file in files:filePaths.append(os.path.join(root,file))return filePaths
主函数。
# 主函数入口
if __name__ == "__main__":i = 0path = 'pdf地址'pdfpath = pdfFilesPath(path)wb = Workbook()ws = wb.activewhile i < pdf数量:out_path = 'excel输出地址/文件名.xlsx'pdf = pdfplumber.open(pdfpath[i])number = itargets = parse(pdf)save(targets, out_path, number)i += 1print('运行结束!')
完整代码:
import os
import pdfplumber #解析pdf文件,尤其带有表格的文件
from openpyxl import Workbook #读写Excel的文件def parse(pdf):targets = [] #保存结果,for page in pdf.pages: words = page.extract_words(x_tolerance=5)for word in words:targets.append(word['text'])return targets#print(targets)# 保存
def save(targets, out_path, number, sheet_name='targets'):wb = Workbook()ws = wb.activews.title = sheet_namews._current_row=numberws.append(targets)print(ws)#ws.append(list(targets.values()))wb.save(out_path)def pdfFilesPath(path):'''path: 目录文件夹地址返回值:列表,pdf文件全路径'''filePaths = [] # 存储目录下的所有文件名,含路径for root,dirs,files in os.walk(path):for file in files:filePaths.append(os.path.join(root,file))return filePaths# 主函数入口
if __name__ == "__main__":i = 0path = 'pdf地址'pdfpath = pdfFilesPath(path)while i < pdf数量:out_path = 'excel输出地址/文件名.xlsx'pdf = pdfplumber.open(pdfpath[i])number = itargets = parse(pdf)save(targets, out_path, number)i += 1print('运行结束!')
PDF信息批量提取至Excel相关推荐
- 发票信息批量提取到 excel 软件 4.0
个人微信 394467238 4.0 更新 新增了自己的OCR引擎,使用了神经网络模型,但是很可能会导致导入模块失败,并且识别的结果还有很多小问题,所以还请大家使用后反馈问题 新增了用发票号码.发票代 ...
- 发票信息批量提取到 excel 软件 3.1
3.1 更新 基础图片识别完全放开了次数限制,可以完全免费使用了,并且修改了之前的一个会导致闪退的bug 新增了高级PDF批量识别,对于扫描版本的PDF文件可以支持了 3.0 更新 最大的改动为使用次 ...
- 发票信息批量提取到 excel 软件 3.0
3.0 更新 最大的改动为使用次数可以自动获取了,通过微信扫描小程序即可获得 修改了高级图片识别的一些发票项目的bug 2.5更新: 改正了很多影响体验的bug....用起来应该会好多了 2.4更新: ...
- 发票信息批量提取到 excel 软件 5.1
5.1更新 精简入口,合并了图片和PDF的识别入口 修正了一些网络不好的情况下的bug 4.0 更新 新增了自己的OCR引擎,使用了神经网络模型,但是很可能会导致导入模块失败,并且识别的结果还有很多小 ...
- 发票信息批量提取到 excel 软件 2.3
地址更新为: 链接:https://pan.baidu.com/s/1WQQ8kaDilaagjoK5IrYZzA 提取码:1111 日了狗了,电脑还是有木马,下载链接取消了,后续我换台电脑打包软件 ...
- 发票信息批量提取到 excel 软件 2.4
地址更新为: 链接:https://pan.baidu.com/s/1WQQ8kaDilaagjoK5IrYZzA 提取码:1111 个人公众号"代码就是生产力",发布更多有用的 ...
- 发票信息批量提取到 excel 软件 2.5
2.5更新: 改正了很多的bug.... 用起来应该会好多了 2.4更新: 还是有人反馈下载后360检测会有木马,这次花力气把这个问题彻底解决了,首先是换了一台电脑来生成exe文件,发现还是会被360 ...
- python提取pdf数据到excel_PDF文本内容批量提取到Excel
机器学习,统计项目合作QQ:231469242,版权所有 作用:pdf内容批量提取到excel 各位亲朋好友,我才上班时候有个鼓噪乏味工作,就是把一个个PDF内容复制粘贴到Excel表格里面,方便以后 ...
- 信息批量提取工具bulk-extractor
信息批量提取工具bulk-extractor 在数字取证中,通常需要面对海量的数据,如几百GB甚至TB级别的数据.从这些海量数据中,提取有价值的数据是一个漫长.枯燥.繁琐的过程.Kali Linux提 ...
最新文章
- 在linux上配置unixODBC和FreeTDS访问MS SQL Server.
- 中国水处理行业深度监测及投资发展可行性分析报告2022-2027年新版
- Swin Transformer对CNN的降维打击
- boost::mp11::mp_max_element_q相关用法的测试程序
- python 去除字符串的标点符号 用_Python输入和输出
- c#中通过win32API(FindWindowEx)查找控件句柄实例
- 傍腾讯,切阿里,拼多多的千亿瞒天术
- 84直方图最大矩形覆盖 · Largest Rectangle in Histogram
- 【C++入门】C++ List类
- RK3288_Android7.1调试以太网ethernet
- 关于日期控件被模态框遮盖的问题解析
- java 车牌正则表达式_车牌正则表达式
- 微型计算机是以微处理器为基础,在计算机中以微处理器为核心组成的微型计算机属于第几代计算机...
- miui删除内置不卡米教程_MIUI11卸载系统自带软件,无需ROOT也可以
- win7老计算机,windows7旗舰版系统电脑老是自动重启的原因汇总
- Linux ubuntu 20.04安装unrar
- 原创 关于微信拼车小程序开发的需求分析(分析建模)
- mysql和sqlite3 ios_iOS数据库存储之SQLite3
- Topaz Mask AI 1.3.7汉化版|AI人工智能抠图插件Topaz Mask AI 1.3.7中文版
- html2canvas+jsPDF实现横向打印iframe中的内容
热门文章
- 【java网络编程】TCP三次握手、四次挥手,常见Socket通信BIO
- 属于未来计算机的睡哪一个,【单选题】下面哪一个不是未来计算机的发展方向?
A. 光计算机
B. 量子计算机
C. 电子管计算机
D. 神经网络计算机...
- 计算1-10000之间的质数
- python界面开发哪个好用_python界面开发工具哪个好?
- 《Go语言圣经》笔记
- eclipse异常:The sourse attachment dose not contain..
- python机票_某哪儿机票JS解密(3)--python调用node产生正确的航线和pre
- 计算机英语作文150字,英语作文150字
- vsc code-runner插件运行python文件,解释器更改为ananconda
- python练习实例——查找整数