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>
This commit is contained in:
103
verify_capture_system.py
Executable file
103
verify_capture_system.py
Executable file
@@ -0,0 +1,103 @@
|
||||
#!/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())
|
||||
Reference in New Issue
Block a user