批量识别 1000 张发票,我只用了这 1 个脚本
大家好,我是正在实战各种 AI 项目的程序员晚枫。
📦 1000 张发票,什么概念?
传统方式:
- 单张录入:2 分钟
- 1000 张:2000 分钟
- 33 小时,不吃不喝不睡
- 还要加班 4 天
我的方式:
- 脚本运行:1000 张/30 分钟
- 30 分钟,喝咖啡看剧
- 准时下班
差距:66 倍。
秘密:一个批量识别脚本。
🎯 脚本功能
技能基础:poocr-vatinvoice2excel
ClawHub 地址:https://clawhub.ai/CoderWanFeng/poocr-vatinvoice2excel
我的增强版脚本:
- ✅ 自动遍历文件夹
- ✅ 支持 PDF/JPG/PNG 混合
- ✅ 进度条显示
- ✅ 异常自动重试
- ✅ 失败记录日志
- ✅ 完成后邮件通知
代码开源,直接用。
🛠️ 完整代码
1 | #!/usr/bin/env python |
📦 安装依赖
1 | # 安装 poocr |
🛠️ 使用步骤
第 1 步:准备发票
创建文件夹:
1 | project/ |
第 2 步:配置密钥
Windows:
1 | setx TENCENT_SECRET_ID "你的 SecretId" |
Mac/Linux:
1 | export TENCENT_SECRET_ID="你的 SecretId" |
第 3 步:运行脚本
1 | python batch_process.py |
第 4 步:查看结果
输出:
1 | ============================================================ |
打开 Excel:983 张发票信息整整齐齐。
查看失败记录:17 张发票需要手动处理。
💡 进阶功能
功能 1:邮件通知
1 | import smtplib |
功能 2:定时任务
Windows 任务计划程序:
- 打开任务计划程序
- 创建基本任务
- 设置每天下午 4 点
- 选择脚本:
batch_process.py - 完成
效果:每天自动处理新发票。
功能 3:多进程加速
1 | from multiprocessing import Pool |
效果:4 进程并行,速度提升 3-4 倍。
📊 性能对比
| 发票数量 | 单线程 | 4 进程 | 提升 |
|---|---|---|---|
| 100 张 | 3 分钟 | 1 分钟 | 3 倍 |
| 500 张 | 15 分钟 | 5 分钟 | 3 倍 |
| 1000 张 | 30 分钟 | 10 分钟 | 3 倍 |
| 5000 张 | 150 分钟 | 50 分钟 | 3 倍 |
建议:
- 100 张以内:单线程足够
- 500-1000 张:4 进程
- 5000 张以上:8 进程 + 分批处理
💬 联系我
| 平台 | 账号/链接 |
|---|---|
| 微信 | 扫码加好友 |
| 微博 | @程序员晚枫 |
| 知乎 | @程序员晚枫 |
| 抖音 | @程序员晚枫 |
| 小红书 | @程序员晚枫 |
| B 站 | Python 自动化办公社区 |
主营业务:AI 编程培训、企业内训、技术咨询
🎓 推荐课程
1000 张发票,30 分钟搞定。
这不是魔法,这是代码的力量。
你,也可以拥有。 💪
完整代码已上传 GitHub,扫码获取。