This commit is contained in:
nafer committed 2026-03-10 15:34:35 +03:00
1 parent 8eccfa1833
commit c706116de3
1 file changed
+10 -1
+10 -1
View File
@@ -967,15 +967,18 @@ async def run_browser_task(task_id: str, task: str, max_steps: int, model: str):
# Автоматическое решение капчи перед запуском, если включено # Автоматическое решение капчи перед запуском, если включено
if AUTO_SOLVE_CAPTCHA and CAPSOLVER_API_KEY: if AUTO_SOLVE_CAPTCHA and CAPSOLVER_API_KEY:
logger.info(f"[{task_id}] AUTO_SOLVE_CAPTCHA enabled, checking for captcha...")
try: try:
# Получаем страницу через browser_use # Получаем страницу через browser_use
from browser_use import BrowserSession from browser_use import BrowserSession
browser_session = BrowserSession(browser=browser) browser_session = BrowserSession(browser=browser)
page = await browser_session.get_current_page() page = await browser_session.get_current_page()
if page: if page:
logger.info(f"[{task_id}] Page obtained, checking for captcha elements...")
# Проверяем наличие капчи # Проверяем наличие капчи
captcha_found = await page.query_selector('[data-sitekey]') captcha_found = await page.query_selector('[data-sitekey]')
turnstile_found = await page.query_selector('iframe[src*="turnstile"]') turnstile_found = await page.query_selector('iframe[src*="turnstile"]')
logger.info(f"[{task_id}] Captcha found: {captcha_found}, Turnstile found: {turnstile_found}")
if captcha_found or turnstile_found: if captcha_found or turnstile_found:
logger.info(f"[{task_id}] CAPTCHA detected, attempting to solve automatically...") logger.info(f"[{task_id}] CAPTCHA detected, attempting to solve automatically...")
# Вызываем функцию решения капчи # Вызываем функцию решения капчи
@@ -984,8 +987,14 @@ async def run_browser_task(task_id: str, task: str, max_steps: int, model: str):
logger.info(f"[{task_id}] CAPTCHA solved successfully!") logger.info(f"[{task_id}] CAPTCHA solved successfully!")
else: else:
logger.warning(f"[{task_id}] Failed to solve CAPTCHA automatically") logger.warning(f"[{task_id}] Failed to solve CAPTCHA automatically")
else:
logger.info(f"[{task_id}] No captcha detected on page")
else:
logger.warning(f"[{task_id}] Could not get page")
except Exception as e: except Exception as e:
logger.warning(f"[{task_id}] Auto-captcha solve failed: {e}") logger.error(f"[{task_id}] Auto-captcha solve failed: {e}")
else:
logger.info(f"[{task_id}] AUTO_SOLVE_CAPTCHA={AUTO_SOLVE_CAPTCHA}, CAPSOLVER_API_KEY={'set' if CAPSOLVER_API_KEY else 'not set'}")
# Выполнение задачи # Выполнение задачи
history: AgentHistoryList = await agent.run(max_steps=max_steps) history: AgentHistoryList = await agent.run(max_steps=max_steps)