QQ邮箱发票下载器
v8.2自动登录QQ邮箱,按日期搜索发票邮件,下载PDF附件和解压ZIP,过滤非发票,生成分类Excel报告。 (No change needed as the text is already in Chinese)
运行时依赖
安装命令
点击复制技能文档
QQ邮箱发票下载器 技能 用途
自动登录QQ邮箱,搜索指定时间段的发票邮件,下载PDF附件,处理压缩包,并生成Excel目录
使用方法 # v8.2 最新版 (推荐) python invoice_下载er_v82.py 260201 260310
# 输出目录: Z:\OpenClaw\InvoiceOC\260201-260310_v1\
核心特性 特性 说明 智能搜索 修复 date_lt 参数,支持精确日期范围 智能自适应按钮识别 自动扫描"下载"/"批量zip下载"等关键词 只下载PDF/图片 跳过 OFD/XML/CSV 保留原文件名 不添加时间戳前缀 重名处理 MD5内容比对,不同加版本号 ZIP解压后删除 自动解压并删除压缩包 跳过非发票 过滤堂食明细、小票等 SSL自动降级 SSL失败时自动禁用验证重试 Excel详细报告 成功/跳过/失败/异常分表显示 发票处理策略 发票类型 处理方式 直接附件 HTTP直接下载 诺诺网 浏览器点击下载按钮 税务平台(预览) 浏览器点击PDF下载 税务平台(直链) HTTP直接下载 飒拉商业 筛选PDF链接+HTTP下载 中海油/批量下载 识别"批量zip下载"按钮 通行费发票 ZIP解压 支持平台 和运国际 (上海税务) 诺诺网 百旺金穗云 飒拉商业 中国联通 中海油(批量zip下载) 通行费电子发票 所有PDF/ZIP/PNG/JPG附件 输出文件 260201-260310_vX/ ├── attachments/ # 发票文件 ├── 发票目录.xlsx # Excel报告 │ ├── 全部记录 # 所有邮件处理记录 │ ├── 成功 # 成功下载 │ ├── 跳过_重复 # 内容重复跳过的 │ ├── 失败 # 下载失败 │ └── 处理异常 # 处理异常 └── detAIled_结果s.json # 详细JSON日志
关键教训
⚠️ Playwright 浏览器必须串行!多线程要加 Lock!
greenlet.error: cannot switch to a different thread — 这是多线程并行 Playwright 导致。解决方案:单浏览器串行,通过 threading.Lock() 保证线程安全。
Phase 1.5 - LLM 增强分析(invoice_分析器_v9) LLM 触发条件
Invoice分析器WithLLM 在以下情况自动调用 MiniMax LLM:
条件 说明 confidence < 0.7 硬编码置信度不足 invoice_type == "unknown" 平台不在已知列表中
策略:硬编码优先 → 置信度不足或类型未知 → LLM fallback → 取置信度更高者
MINIMAX_API_KEY 配置 # 设置环境变量(Windows PowerShell) $env:MINIMAX_API_KEY = "your-API-key-here"
# 或在 Python 中直接传入 from invoice_分析器_v9 导入 Invoice分析器WithLLM 分析器 = Invoice分析器WithLLM(API_key="your-API-key-here")
# 不设置 → 纯硬编码模式(v8.2 兼容行为)
测试方法 cd qq-invoice-下载er
# 语法检查 python -m py_compile invoice_下载er_v82.py python -m py_compile invoice_分析器_v9.py
# 导入验证 python -c "from invoice_分析器_v9 导入 Invoice分析器WithLLM; print('导入 OK')"
# 运行集成测试(使用 unittest,pytest 可选) python test/test_分析器.py
# 或用 pytest python -m pytest test/test_分析器.py -v
测试覆盖 测试类 验证点 TestKnown平台s 和运国际/诺诺网/中海油 → 置信度 ≥ 0.7,不触发 LLM TestUnknown平台TriggersLLM 未知平台 → LLM 被调用并胜出 TestLLMWinsWhenBetter LLM 置信度 > 硬编码 → 使用 LLM TestFallbackPreservesBase结果 LLM 异常 → 保留硬编码结果 TestNonInvoiceSkip 非发票邮件 → unknown 类型