From 69bf430525d031a64ab85f2c67f66feffaf60d2f Mon Sep 17 00:00:00 2001 From: huangzhenpc Date: Mon, 7 Apr 2025 15:08:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=9D=E5=AD=98=E7=8E=B0=E6=9C=89=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=20=E5=A2=9E=E5=8A=A0=E5=9F=9F=E5=90=8D=E5=92=8C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=97=B6=E9=97=B4=E5=85=B3=E8=81=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 39 +++++++++++++++++++++++++++++++++------ 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index 1af9b65..4dbae3d 100644 --- a/main.py +++ b/main.py @@ -17,6 +17,7 @@ from services.fetch_manager import FetchManager from services.proxy_pool import ProxyPool from services.token_pool import TokenPool from services.self_hosted_email import SelfHostedEmail +from upload_account import AccountUploader class CursorRegister: @@ -174,7 +175,7 @@ class CursorRegister: self.logger.error("获取token失败,终止注册") return [] - actual_num = len(token_pairs) # 根据实际获取到的token对数量调整注册数量 + actual_num = len(token_pairs) if actual_num < num: self.logger.warning(f"只获取到 {actual_num} 对token,将减少注册数量") num = actual_num @@ -182,7 +183,6 @@ class CursorRegister: # 2. 获取代理 proxies = await self.proxy_pool.batch_get(num) - # 在关键位置添加详细日志 self.logger.debug(f"代理列表: {proxies}") self.logger.debug(f"尝试使用的token对数量: {len(token_pairs)}") @@ -198,20 +198,47 @@ class CursorRegister: # 5. 处理结果 successful = [] failed = [] + skipped = 0 for i, result in enumerate(results): if isinstance(result, Exception): - self.logger.error(f"自建邮箱注册任务 {i+1} 失败: {str(result)}") + self.logger.error(f"注册任务 {i+1} 失败: {str(result)}") failed.append(str(result)) + elif result is None: + skipped += 1 else: - self.logger.info(f"自建邮箱注册任务 {i+1} 成功: {result.get('email')}") successful.append(result) - self.logger.info(f"自建邮箱注册完成: 成功 {len(successful)}, 失败 {len(failed)}") + # 6. 直接上传成功注册的账号 + if successful: + try: + uploader = AccountUploader() + await uploader.initialize() + + # 准备上传数据 + upload_data = [] + for account in successful: + upload_item = { + "email": account["email"], + "password": account["email_password"], + "cursor_password": account["cursor_password"], + "cursor_cookie": account["cursor_cookie"], + "cursor_token": account.get("cursor_jwt", "") + } + upload_data.append(upload_item) + + # 上传账号 + await uploader.upload_accounts(upload_data) + await uploader.cleanup() + self.logger.info(f"成功上传 {len(upload_data)} 个账号到服务器") + except Exception as e: + self.logger.error(f"上传账号时发生错误: {str(e)}") + + self.logger.info(f"注册完成: 成功 {len(successful)}, 失败 {len(failed)}, 跳过 {skipped}") return successful except Exception as e: - self.logger.error(f"自建邮箱批量注册失败: {str(e)}") + self.logger.error(f"批量注册失败: {str(e)}") return []