From c54500b1783bea397bd6a51d09a5b31db28f47f8 Mon Sep 17 00:00:00 2001 From: protokey Date: Mon, 12 Oct 2026 13:17:34 +0400 Subject: [PATCH] =?UTF-8?q?chore:=20=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BB=D0=BE=D0=B3=D0=B8=D0=BA=D0=B0=20=D1=80?= =?UTF-8?q?=D0=B0=D0=B1=D0=BE=D1=82=D1=8B=20=D1=81=20=D1=83=D1=87=D0=B5?= =?UTF-8?q?=D1=82=D0=BE=D0=BC=20=D1=81=D0=BB=D0=BE=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.py | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/main.py b/src/main.py index 2c19dc2..aea2e85 100644 --- a/src/main.py +++ b/src/main.py @@ -76,23 +76,19 @@ async def solve( api_key = request.headers.get('X-API-Key') logger.info("Incoming payload: [%s]\n%s", session_id, payload.model_dump_json(indent=2, ensure_ascii=True)) + global BROWSER_SLOTS - if BROWSER_SLOTS <= 0: - return { - "ok": False, - "error": "No slots available", - } - BROWSER_SLOTS -= 1 - try: + assert BROWSER_SLOTS > 0 and (BROWSER_SLOTS := BROWSER_SLOTS.__sub__(1)) >= 0, "No slots available" + + proxy = parse_proxy(payload.proxy) + if not session_id: session_id = str(uuid.uuid4()) response.set_cookie("session_id", session_id) logger.info("Setup new session with session_id: %s", session_id) - proxy = parse_proxy(payload.proxy) - # профиль (cookies/local storage/fingerprint.json) хранится на диске по # session_id — если он уже приходил в куках, ниже подгружаем существующий # fingerprint из этой папки; если нет (новый session_id) — генерируем новый