f7f45dbefff482af539d6f24be781c8fe6070e81
新功能: - 新增批量自动注册脚本 auto_register.py - 新增临时邮箱客户端 tempmail.py - 支持选择多个邮箱域名后缀(domain_index) - 自动生成临时邮箱并完成注册流程 - 成功注册的邮箱保留,失败的自动删除 配置改进: - 创建 config.example.py 模板 - config.py 加入 .gitignore 保护敏感信息 - 新增 domain_index 配置项 文档更新: - 更新 README.md,添加多域名配置说明 - 添加配置文件安全说明 - 完善快速开始指南 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
OpenAI 自动注册工具
自动化注册 OpenAI 账号,使用临时邮箱接收验证邮件。
功能特点
- ✅ 自动生成临时邮箱:通过临时邮箱 API 自动创建邮箱
- ✅ 多域名支持:支持选择不同的邮箱域名后缀(最多 3 个)
- ✅ 自动接收验证邮件:轮询等待 OpenAI 发送的验证码
- ✅ 自动提取验证码:从邮件中提取并提交验证码
- ✅ 成功/失败管理:成功注册的邮箱保留,失败的自动删除
- ✅ 批量注册:支持一次注册多个账号
- ✅ 完整日志:详细的调试输出,方便排查问题
快速开始
1. 配置临时邮箱 API
复制配置模板并填入真实信息:
cp config.example.py config.py
编辑 config.py,填入你的临时邮箱 API 信息:
TEMPMAIL_CONFIG = {
'api_base_url': 'https://your.tempmail.domain', # 你的临时邮箱域名
# 方式1:用户名密码登录(推荐)
'username': 'your_username', # 你的临时邮箱系统用户名
'password': 'your_password', # 你的密码
# 方式2:JWT Token(备用)
# 'admin_token': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...',
# 域名选择(0=第1个域名, 1=第2个, 2=第3个)
'domain_index': 0, # 改成 0, 1, 或 2 来选择不同的域名后缀
}
临时邮箱 API 文档见:docs/tempmail.md
2. 安装依赖
pip install -r requirements.txt
# 或使用 uv
uv pip install -r requirements.txt
3. 注册账号
注册 1 个账号(自动生成邮箱和密码):
python auto_register.py
使用方法
批量注册
注册 10 个账号:
python auto_register.py --count 10
指定密码
所有账号使用相同密码:
python auto_register.py --count 5 --password "MySecurePassword123!"
自定义输出文件
保存到指定文件:
python auto_register.py --count 10 --output accounts.json
完整示例
python auto_register.py \
--count 20 \
--password "MyPassword123!" \
--output my_accounts.json
配置说明
域名选择
临时邮箱支持多个域名后缀,通过 domain_index 参数选择:
TEMPMAIL_CONFIG = {
# ...
'domain_index': 0, # 0 = 第1个域名, 1 = 第2个, 2 = 第3个
}
这样可以避免某个域名被 OpenAI 屏蔽时,切换到其他域名继续注册。
调试模式
调试输出在 config.py 中控制:
DEBUG = True # 打印详细日志
DEBUG = False # 静默模式
输出格式
成功注册的账号会保存到 JSON 文件(默认:registered_accounts.json):
[
{
"email": "random123@domain.com",
"password": "MyPassword123!",
"verified": true
},
{
"email": "random456@domain.com",
"password": "MyPassword123!",
"verified": true
}
]
工作流程
1. 生成临时邮箱 [TempMailClient.generate_mailbox()]
↓
2. 初始化 OpenAI 注册流程 [OpenAIRegistrar._step1_init_through_chatgpt()]
↓
3. 初始化 Sentinel [_step2_init_sentinel() + _step2_5_submit_sentinel()]
↓
4. 解 PoW [_step2_6_solve_pow() + _step2_7_submit_pow()]
↓
5. 提交注册请求 [_step3_attempt_register()]
↓
6. 等待验证邮件 [TempMailClient.wait_for_email()]
↓
7. 提取验证码 [TempMailClient.extract_verification_code()]
↓
8. 提交验证码 [_step4_verify_email()]
↓
9. 注册完成
├─ ✓ 成功 → 保留邮箱
└─ ✗ 失败 → 删除邮箱 [TempMailClient.delete_mailbox()]
文件结构
.
├── auto_register.py # 主脚本(批量注册)
├── config.example.py # 配置模板
├── config.py # 配置文件(需自行创建,包含敏感信息)
├── modules/
│ ├── register.py # 注册逻辑
│ ├── tempmail.py # 临时邮箱客户端
│ ├── http_client.py # HTTP 客户端
│ ├── fingerprint.py # 浏览器指纹
│ ├── sentinel_solver.py # Sentinel 挑战求解
│ └── pow_solver.py # PoW 求解
└── docs/
└── tempmail.md # 临时邮箱 API 文档
注意事项
临时邮箱系统
- 只保留成功注册的邮箱
- 失败的邮箱会自动删除,不占用空间
- 你可以在临时邮箱系统中查看所有成功注册的账号
速率限制
- OpenAI 可能有注册频率限制
- 建议在批量注册时添加延迟(如每个账号间隔 30 秒)
- 如遇到 429 错误,请降低注册速度
配置文件安全
config.py包含敏感信息,已加入.gitignore- 不要将
config.py提交到 git 仓库 - 使用
config.example.py作为模板
常见问题
1. 收不到验证邮件
- 检查临时邮箱 API 是否正常工作
- 检查邮箱域名是否被 OpenAI 屏蔽(尝试切换
domain_index) - 增加等待时间(修改
wait_for_email()的timeout参数)
2. PoW 求解失败
- 确保安装了 Node.js
- 检查
sdk.js路径是否正确 - 增加 PoW 超时时间(
config.py中的POW_CONFIG)
3. 注册被拒绝(409 Conflict)
- 邮箱可能已被使用(理论上临时邮箱应该是新的)
- OpenAI 可能检测到异常行为,尝试更换 IP
4. Cloudflare 403
- 可能触发了反爬虫检测
- 尝试更换 User-Agent(
config.py中的FINGERPRINT_CONFIG) - 添加延迟,降低请求频率
5. 某个域名被屏蔽
- 修改
config.py中的domain_index,切换到其他域名 - 例如:第1个域名不行就改成
domain_index: 1或domain_index: 2
许可证
MIT License
Description
Languages
Python
89.9%
JavaScript
10.1%