Files
rpa_vision_v3/verify_capture_system.py
Dom a27b74cf22 v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- Frontend v4 accessible sur réseau local (192.168.1.40)
- Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard)
- Ollama GPU fonctionnel
- Self-healing interactif
- Dashboard confiance

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 11:23:51 +01:00

104 lines
3.0 KiB
Python
Executable File

#!/usr/bin/env python3
"""
Vérification automatique du système de capture d'écran
Exécuté automatiquement par run.sh pour garantir que tout fonctionne
"""
import sys
import logging
# Configuration du logging
logging.basicConfig(level=logging.INFO, format='%(message)s')
logger = logging.getLogger(__name__)
def verify_imports():
"""Vérifier que tous les imports nécessaires fonctionnent"""
logger.info("Vérification des imports...")
try:
import numpy as np
logger.info(" ✓ numpy")
except ImportError as e:
logger.error(f" ✗ numpy: {e}")
return False
try:
import mss
logger.info(" ✓ mss")
except ImportError:
logger.warning(" ⚠ mss non disponible (fallback vers pyautogui)")
try:
import pyautogui
logger.info(" ✓ pyautogui (fallback)")
except ImportError as e:
logger.error(f" ✗ Aucune bibliothèque de capture disponible: {e}")
return False
try:
import pygetwindow
logger.info(" ✓ pygetwindow")
except (ImportError, NotImplementedError) as e:
logger.warning(" ⚠ pygetwindow non disponible (détection de fenêtre désactivée)")
logger.debug(f" Raison: {e}")
return True
def verify_screen_capturer():
"""Vérifier que ScreenCapturer fonctionne"""
logger.info("\nVérification de ScreenCapturer...")
try:
from core.capture.screen_capturer import ScreenCapturer
logger.info(" ✓ Import réussi")
except ImportError as e:
logger.error(f" ✗ Impossible d'importer ScreenCapturer: {e}")
return False
try:
capturer = ScreenCapturer()
logger.info(f" ✓ Initialisation réussie (méthode: {capturer.method})")
except Exception as e:
logger.error(f" ✗ Échec d'initialisation: {e}")
return False
try:
img = capturer.capture()
if img is not None:
logger.info(f" ✓ Capture réussie: {img.shape}")
return True
else:
logger.error(" ✗ Capture a retourné None")
return False
except Exception as e:
logger.error(f" ✗ Échec de capture: {e}")
return False
def main():
"""Fonction principale de vérification"""
logger.info("="*60)
logger.info("VÉRIFICATION DU SYSTÈME DE CAPTURE D'ÉCRAN")
logger.info("="*60)
# Vérifier les imports
if not verify_imports():
logger.error("\n✗ Échec de vérification des imports")
logger.error("Installez les dépendances: pip install mss pygetwindow")
return 1
# Vérifier ScreenCapturer
if not verify_screen_capturer():
logger.error("\n✗ Échec de vérification de ScreenCapturer")
return 1
logger.info("\n" + "="*60)
logger.info("✓ SYSTÈME DE CAPTURE OPÉRATIONNEL")
logger.info("="*60)
return 0
if __name__ == "__main__":
sys.exit(main())