عن المشروع
i2i-yield-watch 是 i2iFunding P2P借贷市场的一款自动化监控工具。它通过定时 GitHub Actions 脚本,每隔约五分钟进行一轮爬取,在十五分钟时间窗口内完成三轮数据抓取,对每笔贷款按收益率和信用评分进行标准化处理和打分,并在出现符合标准的贷款时发送告警通知。
所有状态数据以 JSON 文件形式保存在 data/ 目录下,作为 git 版本控制的"数据库"使用,无需外部数据库支持;如需启用可选的 Firestore 后端,可通过环境变量切换。
爬虫使用 Playwright 拦截网站自身的 XHR 请求,因为直接访问贷款列表 API 会被阻断。爬虫在页面导航前设置响应监听器,等待初始批次数据加载完毕后,点击"显示更多"按钮,直到页面行数不再增长,最终返回去重后的数据行。此外,还包含全会话级别的带退避重试机制。
通知系统支持 Telegram(可选扩展支持 ntfy)。逻辑层面区分了多种告警模式:超过可配置收益率阈值的贷款实时告警、按利率区间分组的静默汇总、跨越高利率阈值的醒目告警、符合条件的贷款集合变化总结,以及可选的定期推送摘要。去重状态防止重复通知同一笔贷款。Telegram 命令机器人支持按需触发工作流程(爬取、投资、钱包、摘要、状态、心跳),并通过自交接机制和定时心跳任务保持运行。
仪表盘是基于 GitHub Pages 的静态单页应用,直接从提交的 JSON 文件中读取数据,提供活跃/归档分类标签、月份选择器、收益率、优先级、信用和产品类型筛选、搜索、排序、分页、图表展示、键盘快捷键以及深色/浅色主题切换等功能。
可选的自动投资人功能可通过直接 HTTP 调用和自动登录方式下单和撤单。安全机制到位:默认处于干跑模式,执行真实投资需同时满足开启在线标志和输入交易密码两个条件,默认收益率门槛为 100% 以上。贷款选择按收益率和信用评分排序,头寸规模受单笔贷款上限和钱包余额双重约束,任一中间环节发生错误即自动停止。多账户支持允许多个登录共享同一投资组合,每个账户拥有独立的凭证、门槛和去重命名空间。附加功能包括:对通过收益率门槛但未能通过信用门槛的贷款进行接近错过报告,以及在连续多日未出现符合条件的贷款时发出闲置资金提醒。
安全说明:本项目不提交任何密钥文件;环境变量和服务账号 JSON 通过 git-crypt 加密,凭证存储于 GitHub Actions 密钥中,公开仓库内不含任何借款人个人身份信息。项目采用 MIT 开源协议,声明为稳定运行于生产环境。本项目仅供信息参考和个人自动化用途,不构成投资建议;P2P借贷存在本金损失风险。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.