核心用法
George Banking Automation 是一个基于 Playwright 的 Python 命令行工具,专门用于自动化奥地利 Erste Bank / Sparkasse 的 George 网上银行平台。用户可通过简单的 CLI 命令完成登录、获取账户列表、拉取交易记录、查看投资组合,以及处理数据载体(Data Carrier)的上传和电子签署等操作。
主要功能模块:
- 身份管理:
login/logout命令建立和清理浏览器会话 - 账户信息:
accounts列出所有账户(支票、储蓄、证券账户) - 交易数据:
transactions按日期范围导出指定账户的流水 - 批量支付:
datacarrier-upload/datacarrier-sign支持 SEPA XML(pain.001)上传和数字签名
推荐操作流:
1. 登录 → 获取账户 → 拉取交易/投资组合 → 登出
2. 登录 → 上传支付文件 → 签署确认 → 登出
显著优点
- 完整自动化:覆盖从查询到支付的完整银行业务链,无需人工干预
- 结构化输出:所有数据以 JSON 格式返回,便于集成到财务系统或数据分析管道
- 安全会话管理:会话状态存储在独立工作目录,权限严格控制(目录 700,文件 600),且明确提供
logout命令清理残留认证状态 - 开源可审计:GitHub 公开源码,依赖 Playwright 这一成熟浏览器自动化框架
潜在缺点与局限性
- 地域限制:仅支持奥地利 Erste Bank / Sparkasse 体系,无多银行适配能力
- 依赖浏览器自动化:受银行前端变更影响大,CSS 选择器或页面结构调整可能导致脚本失效
- 无官方背书:非银行官方工具,属于第三方逆向工程实现
- 无内置 2FA 处理:文档未明确说明如何处理现代银行常见的强身份验证(如 App 推送确认、TAN 生成器)
- 维护风险:开源项目由个人开发者维护,长期更新承诺未知
适合人群
- 需要自动化奥地利银行操作的开发者或技术型中小企业
- 构建个人财务聚合工具的高级用户
- 需批量处理 SEPA 支付的会计/财务自动化场景
常规风险
| 风险类型 | 说明 |
|---------|------|
| **授权风险** | 使用自动化工具可能违反银行服务条款,存在账户受限风险 |
| **凭证安全** | 登录凭据需通过脚本传入,存在命令历史或日志泄露可能 |
| **会话持久化** | 虽提供 `logout`,但异常中断可能导致敏感会话残留 |
| **操作不可逆** | `datacarrier-sign` 直接触发真实资金转移,测试与生产环境无明确隔离机制 |
| **依赖供应链** | Playwright 及 Chromium 的更新可能引入兼容性问题或安全漏洞 |