feat: 极验验证默认无限重试,由登录整体超时兜底

- max_proxy_retries 默认值从10改为0(无限重试)
- _solve_geetest 增加 deadline 参数,超时则主动退出
- login() 计算 deadline 并传递给极验验证
- 前端/Schema/Service 默认值同步更新
This commit is contained in:
yml2213
2026-06-23 23:40:40 +08:00
parent 7711111015
commit 4813eb039d
4 changed files with 13 additions and 6 deletions
+1 -1
View File
@@ -125,7 +125,7 @@ class AccountOut(BaseModel):
class LoginBatchRequest(BaseModel):
account_ids: list[int]
max_geetest_retries: int = 5
max_proxy_retries: int = 10 # 代理切换次数,0=无限切换直到成功
max_proxy_retries: int = 0 # 代理切换次数,0=无限切换直到成功
max_login_retries: int = 3 # 登录整体重试次数(换代理从头重跑)
max_total_time: float = 300 # 单账号登录总时长上限(秒),超时则放弃
concurrency: int = 3 # 并发数,1-10
+1 -1
View File
@@ -29,7 +29,7 @@ class LoginBatchRunner:
created_by: int,
creator_permissions: list[str],
max_geetest_retries: int = 5,
max_proxy_retries: int = 10,
max_proxy_retries: int = 0,
max_login_retries: int = 3,
max_total_time: float = 300,
proxy_config: Optional[ProxyConfigModel] = None,
+1 -1
View File
@@ -44,7 +44,7 @@ export default function LoginTasksPage() {
});
const [maxProxyRetries, setMaxProxyRetries] = useState(() => {
const v = localStorage.getItem('login_max_proxy_retries');
return v ? Math.max(0, Number(v) || 10) : 10;
return v ? Math.max(0, Number(v) || 0) : 0;
});
// 值变化时自动持久化