Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Invoice Verifier (发票验真助手)

License: MIT Python 3.11+ Electron

基于 Python + Playwright 的自动化发票验真系统,支持命令行 (CLI) 和 桌面端 (GUI) 双模式运行。

📖 项目简介

Invoice Verifier 是一个智能化的发票验真工具,旨在解决财务报销过程中的发票核验痛点。它通过自动化技术对接税务局查验平台,实现了从 PDF 解析到自动验真的全流程处理。

核心特性

  • ⚡️ 双模运行

    • CLI 模式:适合开发者和脚本集成,支持快速单张验真。

    • GUI 模式:基于 Electron 的现代化桌面应用,提供可视化操作界面(支持 macOS/Windows)。

  • 📄 智能解析:内置 PDF 解析引擎,精准提取发票代码、号码、日期、金额等关键信息。

  • 🤖 自动化验真:利用 Playwright 驱动浏览器,自动填写表单,大幅减少人工录入。

  • 🖥 验证码辅助:针对复杂的验证码环节,提供大图弹窗辅助输入,优化交互体验。

  • 📂 结果归档:自动生成验真结果 PDF 和日志,方便存档备查。


🚀 快速开始

1. 环境准备

确保您的系统已安装以下基础环境:

  • Python 3.11+

  • Node.js 18+ (仅 GUI 模式需要)

  • Poppler (用于 PDF 解析)

安装系统依赖 (macOS 示例)

# 安装 Poppler

brew install poppler

2. 安装项目依赖

# 1. 克隆仓库

git clone https://github.com/your-username/invoice-verifier.git

cd invoice-verifier



# 2. 设置 Python 环境

cd python

python3 -m venv venv

source venv/bin/activate

pip install -r requirements.txt

playwright install chromium

cd ..



# 3. 安装 Node.js 依赖 (仅 GUI 模式需要)

npm install

🛠 使用指南

方式一:命令行 (CLI) 模式

最适合快速验证单张发票。

1. 基础验真

# 运行脚本并指定发票路径

./run.sh "/path/to/your/invoice.pdf"

2. 仅解析信息

如果不进行验真,仅提取发票内容:

source python/venv/bin/activate

python3 python/verify_invoice.py --parse-only "/path/to/your/invoice.pdf"

方式二:桌面应用 (GUI) 模式

提供图形化界面,支持批量上传和可视化操作。

开发模式启动

# 启动 Electron 桌面应用

npm start

构建应用包

# 构建 macOS 应用 (.dmg)

npm run dist:mac



# 构建 Windows 应用 (.exe)

npm run dist:win

📂 项目结构


Invoice_Check/

├── electron/                 # Electron 主进程代码

├── public/                   # 前端静态资源 (HTML/CSS/JS)

├── python/                   # Python 核心引擎

│   ├── verify_invoice.py     # 验真逻辑入口

│   ├── core/                 # 核心功能模块

│   └── requirements.txt      # Python 依赖

├── server/                   # Web 服务端 (Express)

├── assets/                   # 项目图标与资源

├── run.sh                    # CLI 快速启动脚本

├── package.json              # Node.js 配置与脚本

└── README.md                 # 项目文档

📅 开发计划 (Roadmap)

  • v1.0 (Current):

    • 完成 CLI 基础验真功能,支持 PDF 解析与结果生成。

    • 引入 Electron 框架,实现现代化 GUI 界面。

    • 完善 GUI 交互,支持批量发票上传。

    • 优化验证码输入体验 (自动聚焦、错误重试)。

  • v2.0: 集成 OCR 模型,实现全自动验证码识别。

🤝 贡献指南

欢迎提交 Issue 和 Pull Request!

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交改动 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 提交 Pull Request

📄 许可证

本项目采用 MIT 许可证

About

基于 Python + Playwright 的自动化发票验真助手 / Invoice Verifier Automation Tool

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages