SkillAgentSearch skills...

FapiaoAutoFlow

FapiaoAutoFlow 是一个自动化发票处理系统,通过邮件监控、智能解析、文件下载和按月归档来实现发票的自动化管理。

Install / Use

/learn @wangshub/FapiaoAutoFlow
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

FapiaoAutoFlow

自动收取邮箱里的发票,一键归档整理。

再也不用手动点开每封发票邮件、复制链接、下载文件、重命名归档了。


效果演示

📧 收到发票邮件...
   ↓ 检测到京东发票
   ↓ 自动提取下载链接
   ↓ 下载 PDF 文件
   ↓ 重命名并归档

✅ invoices/2026-03/京东_20260315_88.00_FP12345678.pdf

发票会自动按月份归档,文件名统一为:平台_日期_金额_发票号.pdf


部署方式

方式一:直接安装

git clone https://github.com/yourname/FapiaoAutoFlow.git
cd FapiaoAutoFlow
pip install -r requirements.txt

方式二:Docker 部署(推荐)

  1. 克隆项目
git clone https://github.com/yourname/FapiaoAutoFlow.git
cd FapiaoAutoFlow
  1. 创建配置文件
cp .env.example .env
# 编辑 .env 文件,填写你的配置
  1. 启动服务
# 构建并启动(后台运行)
docker compose up -d

# 查看日志
docker compose logs -f

# 停止服务
docker compose down

数据持久化:以下目录会自动映射到宿主机:

  • ./invoices - 下载的发票文件和 SQLite 数据库
  • ./logs - 运行日志

常用命令

# 单次运行(检查一次邮箱)
docker compose run --rm fapiao-autoflow python -m src.main run

# 查看统计
docker compose run --rm fapiao-autoflow python -m src.main stats

# 列出发票
docker compose run --rm fapiao-autoflow python -m src.main list

配置说明

配置 LLM

推荐使用 DeepSeek,便宜好用(约 0.001 元/封邮件)。

  1. 注册 DeepSeek 并获取 API Key
  2. 编辑 .env 文件:
LLM_API_KEY=sk-你的密钥
LLM_BASE_URL=https://api.deepseek.com/v1
LLM_MODEL=deepseek-chat

配置邮箱

.env 文件中配置邮箱:

# QQ邮箱(需要授权码,不是QQ密码)
QQ_EMAIL=你的QQ号@qq.com
QQ_APP_PASSWORD=授权码

# 或 163邮箱
EMAIL_163=yourname@163.com
EMAIL_163_APP_PASSWORD=授权码

# 或 企业邮箱(IMAP)
COMPANY_EMAIL=your@company.com
COMPANY_IMAP_HOST=imap.company.com
COMPANY_IMAP_PASSWORD=你的密码

命令说明

| 命令 | 说明 | |------|------| | python -m src.main run | 检查一次邮箱 | | python -m src.main daemon | 后台运行(每 5 分钟检查) | | python -m src.main stats | 查看统计信息 | | python -m src.main list | 列出本月发票 | | python -m src.main list -m 2026-03 | 列出指定月份发票 |


支持哪些发票?

由于使用 AI 智能解析邮件,理论上支持所有通过邮件发送的发票

  • 🛒 电商:京东、淘宝、美团、拼多多等
  • 🚗 出行:滴滴、高德、12306 等
  • ☁️ 云服务:阿里云、腾讯云、华为云等
  • ⛽ 加油站、高速过路费
  • 🍔 餐饮开票
  • ...更多

其他 LLM 配置

除了 DeepSeek,还支持任意 OpenAI 兼容接口:

<details> <summary>🔧 配置其他 LLM 服务</summary>

修改 .env 文件:

# OpenAI
LLM_API_KEY=sk-xxx
LLM_BASE_URL=https://api.openai.com/v1
LLM_MODEL=gpt-4o-mini

# 智谱 AI
LLM_API_KEY=xxx.xxx
LLM_BASE_URL=https://open.bigmodel.cn/api/paas/v4
LLM_MODEL=glm-4-flash

# 月之暗面
LLM_API_KEY=sk-xxx
LLM_BASE_URL=https://api.moonshot.cn/v1
LLM_MODEL=moonshot-v1-8k

# Ollama 本地(免费)
LLM_API_KEY=ollama
LLM_BASE_URL=http://localhost:11434
LLM_MODEL=qwen2.5:7b
</details>

企业邮箱配置

<details> <summary>📧 配置企业邮箱(IMAP)</summary>

编辑 config/accounts.yaml

accounts:
  - name: "公司邮箱"
    enabled: true
    type: "imap"
    email: "your@company.com"
    auth:
      host: "imap.company.com"
      port: 993
      username: "your@company.com"
      password: "你的密码"
      use_ssl: true
</details>

常见问题

<details> <summary>❓ 邮箱连接失败?</summary>
  1. 确认邮箱已开启 IMAP 服务
  2. 确认使用的是授权码,不是登录密码
  3. 检查网络是否能访问邮箱服务器
</details> <details> <summary>❓ LLM 解析失败?</summary>
  1. 检查 API Key 是否正确
  2. 检查网络是否能访问 LLM API
  3. 查看日志:logs/ 目录
</details> <details> <summary>❓ 发票下载失败?</summary>
  • 部分发票链接有时效性,邮件收到后尽快运行
  • 某些平台需要登录后才能下载,暂不支持
</details> <details> <summary>❓ 如何运行测试?</summary>
pip install pytest
python -m pytest tests/ -v
</details>

License

MIT

View on GitHub
GitHub Stars11
CategoryDevelopment
Updated5d ago
Forks1

Languages

Python

Security Score

75/100

Audited on Apr 3, 2026

No findings