From 95deddaffbce65df0ee082f6ce5023963a9c1e32 Mon Sep 17 00:00:00 2001 From: Michael SCHAL Date: Mon, 24 Nov 2025 00:28:00 +0100 Subject: [PATCH] feat: implement product search orchestration service with direct, light scraping, and browserless AI extraction strategies. --- app/services/search_service.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/services/search_service.py b/app/services/search_service.py index 3b027a3..4b6f66b 100644 --- a/app/services/search_service.py +++ b/app/services/search_service.py @@ -228,16 +228,22 @@ async def search_products( # Nettoyage global des ressources if browser: try: - await browser.close() + if browser.is_connected(): + await browser.close() logger.info("Navigateur global fermé") except Exception as e: logger.error(f"Erreur fermeture navigateur: {e}") + + # Petit délai pour laisser le temps aux connexions de se fermer proprement + await asyncio.sleep(0.5) if playwright: try: await playwright.stop() except Exception as e: - logger.error(f"Erreur arrêt Playwright: {e}") + # Ignorer les erreurs courantes lors de l'arrêt si déjà fermé + if "Event loop is closed" not in str(e): + logger.error(f"Erreur arrêt Playwright: {e}") async def _scrape_with_browserless(