xx
This commit is contained in:
18
main.py
18
main.py
@@ -144,17 +144,14 @@ async def main():
|
||||
total_registered = 0
|
||||
|
||||
while True:
|
||||
# 检查是否还有可用的邮箱账号
|
||||
available_accounts = await register.email_manager.batch_get_accounts(1)
|
||||
if not available_accounts:
|
||||
register.logger.info("没有更多可用的邮箱账号,注册完成")
|
||||
# 直接检查数据库中是否有可用的邮箱账号
|
||||
pending_count = await register.email_manager.count_pending_accounts()
|
||||
if pending_count <= 0:
|
||||
register.logger.info("没有可用的邮箱账号,注册完成")
|
||||
break
|
||||
|
||||
# 释放检查用的账号
|
||||
await register.email_manager.update_account_status(available_accounts[0].id, 'pending')
|
||||
|
||||
# 执行批量注册
|
||||
register.logger.info(f"开始新一轮批量注册,批次大小: {batch_size}")
|
||||
register.logger.info(f"发现 {pending_count} 个可用邮箱,开始新一轮批量注册,批次大小: {batch_size}")
|
||||
results = await register.batch_register(batch_size)
|
||||
|
||||
# 统计结果
|
||||
@@ -164,9 +161,12 @@ async def main():
|
||||
register.logger.info(f"当前总进度: 已注册 {total_registered} 个账号")
|
||||
|
||||
# 如果本批次注册失败率过高,暂停一段时间
|
||||
if successful < batch_size * 0.5: # 成功率低于50%
|
||||
if successful < batch_size * 0.5 and successful > 0: # 成功率低于50%但不为零
|
||||
register.logger.warning("本批次成功率过低,暂停60秒后继续")
|
||||
await asyncio.sleep(60)
|
||||
elif successful == 0 and batch_size > 0: # 完全失败
|
||||
register.logger.error("本批次完全失败,可能存在系统问题,暂停120秒后继续")
|
||||
await asyncio.sleep(120)
|
||||
else:
|
||||
# 正常等待一个较短的时间再继续下一批
|
||||
await asyncio.sleep(5)
|
||||
|
||||
Reference in New Issue
Block a user