Files
verify-invoice-default/PLATFORM_USAGE.md
chenfuqiang c5103e2650
All checks were successful
技能自动化发布 / release (push) Successful in 9s
chore: auto release commit (2026-09-14 15:11:41)
2026-09-14 15:11:41 +08:00

9.2 KiB
Raw Blame History

平台内使用RPA功能的完整指南

📋 概述

本指南详细说明如何将带RPA功能的verify-invoice-default技能发布到平台,并在平台内使用RPA功能。

🎯 平台内使用方式

1. 通过CLI命令使用(推荐)

在平台内,用户可以通过以下CLI命令使用RPA功能:

1.1 提取发票信息

# 基本提取
python scripts/main.py extract-invoices \
  --username "用户名" \
  --password "密码" \
  --profile-dir "浏览器配置目录"

# 详细信息提取
python scripts/main.py extract-invoices \
  --username "用户名" \
  --password "密码" \
  --profile-dir "浏览器配置目录" \
  --detail-mode

1.2 测试RPA连接

python scripts/main.py test-rpa-connection \
  --username "用户名" \
  --password "密码" \
  --profile-dir "浏览器配置目录"

1.3 查询提取的数据

# 查询所有提取记录
python scripts/main.py list-rpa-invoices

# 按批次ID查询
python scripts/main.py list-rpa-invoices --batch-id "批次ID"

# 按状态查询
python scripts/main.py list-rpa-invoices --status "extracted"

# 查看详细记录
python scripts/main.py show-rpa-invoice --record-id 1

# 获取统计信息
python scripts/main.py rpa-invoice-stats

2. 通过Action调用(平台集成)

在平台内,可以通过run_skill_action调用RPA功能:

# 提取发票信息(异步)
run_skill_action --action extract-invoices \
  --input '{"username": "用户名", "password": "密码", "profile_dir": "目录"}'

# 查询提取记录
run_skill_action --action list-rpa-invoices \
  --input '{"limit": 10, "batch_id": "批次ID"}'

# 获取统计信息
run_skill_action --action rpa-invoice-stats

3. 通过对话交互(LLM集成)

用户可以通过自然语言与LLM交互来使用RPA功能:

示例对话:

用户:帮我从网站提取发票信息
LLM:好的,我需要一些信息来执行RPA操作:
1. 网站用户名
2. 网站密码
3. 浏览器配置目录(需要先通过account-manager获取)

请提供这些信息,我将为您提取发票信息。

🔧 平台内配置步骤

步骤1:获取浏览器配置目录

在平台内,用户需要先通过account-manager获取浏览器配置目录:

# 登录account-manager
python account-manager/scripts/main.py ensure-web --platform sandbox-jc2009

# 或者使用简化的命令
python account-manager/scripts/main.py pick-web --platform sandbox-jc2009 --ensure

步骤2:配置环境变量

创建.env文件配置必要的环境变量:

# RPA配置
OPENCLAW_BROWSER_HEADLESS=0
OPENCLAW_RECORD_VIDEO=1
HUMAN_WAIT_TIMEOUT=120

# 日志配置
LOG_LEVEL=INFO

步骤3:初始化数据库

python scripts/main.py init-db

📊 数据流架构

平台内数据流

用户请求 → LLM/CLI → RPA模块 → 浏览器自动化 → 网站数据提取
                ↓
            数据存储 → SQLite数据库
                ↓
            查询接口 → 数据管理界面

数据存储位置

  1. SQLite数据库:{JIANGCHANG_DATA_ROOT}/{JIANGCHANG_USER_ID}/verify-invoice-default/data.db

    • rpa_invoices表:存储RPA提取的原始数据
    • invoice_records表:存储预审后的发票记录
    • prereview_reports表:存储预审报告
  2. 录屏文件:{JIANGCHANG_DATA_ROOT}/{JIANGCHANG_USER_ID}/verify-invoice-default/videos/

  3. 日志文件:{JIANGCHANG_DATA_ROOT}/{JIANGCHANG_USER_ID}/verify-invoice-default/logs/

🎮 平台内使用场景

场景1:批量发票提取

用户需求:从网站批量提取100张发票信息

操作步骤:

  1. 用户通过CLI或对话发起请求
  2. RPA模块自动登录网站
  3. 提取发票列表信息
  4. 保存到数据库
  5. 返回提取结果

命令示例:

python scripts/main.py extract-invoices \
  --username "15527406659" \
  --password "qwer1234" \
  --profile-dir "/path/to/profile"

场景2:发票信息查询

用户需求:查看之前提取的发票信息

操作步骤:

  1. 用户查询提取记录
  2. 系统从数据库读取数据
  3. 返回结构化结果

命令示例:

# 查询最近10条记录
python scripts/main.py list-rpa-invoices --limit 10

# 查看特定记录详情
python scripts/main.py show-rpa-invoice --record-id 5

场景3:统计分析

用户需求:查看RPA提取的统计信息

操作步骤:

  1. 用户请求统计信息
  2. 系统查询数据库统计
  3. 返回统计结果

命令示例:

python scripts/main.py rpa-invoice-stats

🔐 安全考虑

1. 账号安全

  • 密码加密:建议在.env中配置密码,不要硬编码
  • 权限控制:通过account-manager管理账号权限
  • 会话管理:浏览器配置目录隔离不同用户

2. 数据安全

  • 数据脱敏:日志中自动脱敏敏感信息
  • 访问控制:通过平台权限系统控制数据访问
  • 审计日志:记录所有RPA操作

3. 操作安全

  • 频率控制:避免频繁请求,防止被网站限制
  • 人工兜底:验证码、人脸等必须等待人工完成
  • 错误处理:完善的异常捕获和错误报告

📈 平台集成优势

1. 统一管理

  • 账号管理:通过account-manager统一管理浏览器配置
  • 权限控制:平台级权限管理
  • 日志聚合:统一日志查看和分析

2. 数据共享

  • 数据存储:统一数据存储和备份
  • 数据查询:通过数据管理界面查询
  • 数据导出:支持多种格式导出

3. 监控运维

  • 健康检查:平台级健康检查
  • 性能监控:RPA操作性能监控
  • 告警通知:异常情况自动告警

🚀 发布到平台的步骤

步骤1:准备发布文件

确保以下文件已准备就绪:

verify-invoice-default/
├── SKILL.md                    # 技能说明
├── README.md                   # 用户说明
├── TUTORIAL.md                 # 使用教程
├── CHANGELOG.md                # 更新日志
├── scripts/                    # 脚本目录
│   ├── main.py                # CLI入口
│   └── service/               # 服务模块
├── development/                # 开发文档
└── examples/                   # 示例文件

步骤2:验证功能

# 测试CLI命令
python scripts/main.py health
python scripts/main.py version

# 测试RPA功能
python scripts/main.py test-rpa-connection \
  --username "测试用户" \
  --password "测试密码" \
  --profile-dir "测试目录"

步骤3:打包发布

# 使用release脚本
python tools/release.ps1

# 或者手动打包
tar -czf verify-invoice-default.tar.gz verify-invoice-default/

步骤4:上传到平台

  1. 登录平台管理后台
  2. 上传技能包
  3. 配置技能元数据
  4. 发布技能

📝 平台内使用示例

示例1:通过CLI提取发票

# 1. 获取浏览器配置
python account-manager/scripts/main.py ensure-web --platform sandbox-jc2009

# 2. 提取发票信息
python scripts/main.py extract-invoices \
  --username "15527406659" \
  --password "qwer1234" \
  --profile-dir "/path/to/profile"

# 3. 查看提取结果
python scripts/main.py list-rpa-invoices --limit 5

示例2:通过对话交互

用户:我想提取网站上的发票信息
LLM:好的,我来帮您提取发票信息。请提供:
1. 网站用户名:15527406659
2. 网站密码:qwer1234
3. 浏览器配置目录:/path/to/profile

LLM:正在执行RPA提取...
LLM:成功提取了10张发票信息,已保存到数据库。

用户:查看提取的发票详情
LLM:为您查询到最近5条提取记录:
1. 批次ID: abc123, 提取时间: 2026-09-14 10:30:00, 状态: 已提取
2. 批次ID: def456, 提取时间: 2026-09-14 11:00:00, 状态: 已提取
...

🔍 故障排除

问题1:浏览器启动失败

错误:ERROR:MISSING_BROWSER 浏览器启动失败

解决方案:

  1. 检查是否已安装Chrome或Edge浏览器
  2. 确认profile_dir是否有效
  3. 检查是否有其他浏览器进程占用配置目录

问题2:登录失败

错误:ERROR:LOGIN_TIMEOUT 登录失败或超时

解决方案:

  1. 检查用户名和密码是否正确
  2. 确认网络连接是否正常
  3. 检查是否有验证码需要人工处理

问题3:数据保存失败

错误:数据库写入失败

解决方案:

  1. 检查数据库文件权限
  2. 确认数据库表是否已创建
  3. 检查磁盘空间是否充足

📞 技术支持

常见问题

  1. 如何获取浏览器配置目录?

    • 使用account-manager工具:python account-manager/scripts/main.py ensure-web --platform sandbox-jc2009
  2. 如何查看提取的发票数据?

    • 使用命令:python scripts/main.py list-rpa-invoices
  3. 如何导出提取的数据?

    • 使用命令:python scripts/main.py show-rpa-invoice --record-id 1,然后复制JSON输出

联系方式