shiny1005/topps-auto-login

GitHub: shiny1005/topps-auto-login

逆向 ToppsFR 登录 API 并自动化完成邮箱 OTP 验证流程的批量登录工具。

Stars: 0 | Forks: 0

Topps 自动登录 **概述** 本项目自动化了使用邮箱 OTP 的 ToppsFR 登录流程。对于 `tasks.csv` 中的每一行,它会: 1. 启动 ToppsFR 会话并开始邮箱登录步骤。 2. 使用 IMAP 等待 OTP 邮件。 3. 提取 6 位数字验证码并将其提交给 Topps。 4. 并发地对 `tasks.csv` 中的所有任务重复上述操作。 **项目布局** - `main.py`:包含 `CatchYourCards` 类,负责执行登录 + OTP 逻辑。 - `run.py`:加载 `tasks.csv` 以及(可选的)`proxies.txt`,然后并发运行任务。 - `tasks.csv`:每个账号对应一个任务。 - `proxies.txt`:可选的代理列表(由 `main.py` 使用)。 **要求** - Python 3.11+ - 一个可达的 IMAP 服务器,用于接收 OTP 邮件 - 每个账号行需具备有效的 ToppsFR OAuth client id 和 redirect uri - 可选:`proxies.txt` 中的代理 **安装依赖** 在此文件夹下运行: ``` python -m pip install --upgrade pip python -m pip install colorama pandas hyper-sdk ``` 如果你更倾向于使用 `pyproject.toml`,也可以运行: ``` python -m pip install . ``` **配置 `tasks.csv`** `run.py` 使用以下表头读取 `tasks.csv`: ``` email,client_id,redirect_uri,marketing_consent,cf_clearance,cf_bm,imap_host,imap_port,imap_user,imap_pass,imap_folder,otp_timeout_sec,otp_poll_sec,otp_submit_delay_sec,otp_from_filter,otp_subject_filter,delay ``` 注意事项: - `marketing_consent` 会根据字符串值(`true`/`false`)作为布尔值处理。 - `cf_clearance` 和 `cf_bm` 是可选的 Cloudflare cookie 值;如果没有可以留空。 - `otp_from_filter` 和 `otp_subject_filter` 用于判断某封邮件是否为 OTP 邮件。 - `delay` 是传递给 `main.py` 的单任务延迟值。 **配置 `proxies.txt`(可选)** 每行一个代理: - `ip:port` - `ip:port:username:password` 如果 `proxies.txt` 缺失或为空,项目将在不使用代理的情况下运行。 **运行** ``` python run.py ``` **如果找不到 OTP 该怎么办** - 增加 `otp_timeout_sec` - 确保 `imap_folder` 正确(通常是 `INBOX`) - 确认 `otp_from_filter` / `otp_subject_filter` 与 OTP 邮件的发件人/主题相匹配
标签:BeEF, Cloudflare绕过, colorama, hyper-sdk, IMAP邮箱, IP 地址批量处理, OAuth认证, OTP验证码, pandas, Python, Topps, URL抓取, Web API, 云资产清单, 代理支持, 任务自动化, 告警, 多线程并发, 安全绕过, 批量操作, 数据抓取, 无后门, 爬虫, 电商自动化, 自动化登录, 自动填表, 逆向工具, 逆向工程