登录任务增加代理切换次数设置

- 后端: LoginBatchRequest 增加 max_proxy_retries 字段,默认10,0=无限
- 核心: DouyuLogin 极验验证循环根据 max_proxy_retries 控制重试
- 前端: 筛选栏增加代理切换次数输入框,Tooltip 提示0=无限切换直到成功

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
yml2213
2026-06-22 20:40:30 +08:00
co-authored by Claude Fable 5
parent bc40d334b9
commit 2b8716cf72
6 changed files with 36 additions and 7 deletions
+1
View File
@@ -58,6 +58,7 @@ async def create_batch(
created_by=current.id,
creator_role=current.role,
max_geetest_retries=req.max_geetest_retries,
max_proxy_retries=req.max_proxy_retries,
proxy_config=proxy,
log_queue=log_queue,
loop=loop,
+1
View File
@@ -125,6 +125,7 @@ class AccountOut(BaseModel):
class LoginBatchRequest(BaseModel):
account_ids: list[int]
max_geetest_retries: int = 5
max_proxy_retries: int = 10 # 代理切换次数,0=无限切换直到成功
concurrency: int = 3 # 并发数,1-10
+3
View File
@@ -26,6 +26,7 @@ class LoginBatchRunner:
created_by: int,
creator_role: str,
max_geetest_retries: int = 5,
max_proxy_retries: int = 10,
proxy_config: Optional[ProxyConfigModel] = None,
log_queue: Optional[asyncio.Queue] = None,
loop: Optional[asyncio.AbstractEventLoop] = None,
@@ -36,6 +37,7 @@ class LoginBatchRunner:
self.created_by = created_by
self.creator_role = creator_role
self.max_geetest_retries = max_geetest_retries
self.max_proxy_retries = max_proxy_retries
self.proxy_config = proxy_config
self.log_queue = log_queue
self.loop = loop
@@ -126,6 +128,7 @@ class LoginBatchRunner:
account,
proxy=proxy_dict,
max_geetest_retries=self.max_geetest_retries,
max_proxy_retries=self.max_proxy_retries,
)
result = loginer.login()