#!/usr/bin/env python3 import requests import json import sys def analyze_document(document_id): """Analyser un document via l'API backend""" base_url = "http://localhost:18000" print(f"🔍 Analyse du document: {document_id}") print("=" * 50) try: # Récupérer les détails du document response = requests.get(f"{base_url}/api/notary/documents/{document_id}") if response.status_code == 200: data = response.json() print(f"📄 Document: {data.get('filename', 'N/A')}") print(f"📊 Taille: {data.get('size', 0)} bytes") print(f"📅 Upload: {data.get('upload_time', 'N/A')}") print(f"✅ Statut: {data.get('status', 'N/A')}") print(f"📈 Progression: {data.get('progress', 0)}%") print(f"🔄 Étape: {data.get('current_step', 'N/A')}") results = data.get('results', {}) if results: print("\n📋 Résultats de l'analyse:") print("-" * 30) # Type de document doc_type = results.get('document_type', 'N/A') print(f"📑 Type: {doc_type}") # Texte OCR ocr_text = results.get('ocr_text', 'N/A') print(f"📝 Texte extrait: {ocr_text[:100]}...") # Entités entities = results.get('entities', {}) if entities: print(f"👥 Personnes: {entities.get('persons', [])}") print(f"🏠 Adresses: {entities.get('addresses', [])}") print(f"🏢 Propriétés: {entities.get('properties', [])}") # Score de vérification score = results.get('verification_score', 0) print(f"⭐ Score de vérification: {score}") # Données externes external_data = results.get('external_data', {}) if external_data: print(f"🌐 Données externes: {external_data}") # Recommandations recommendations = results.get('recommendations', []) if recommendations: print(f"💡 Recommandations:") for i, rec in enumerate(recommendations, 1): print(f" {i}. {rec}") # Risques risks = results.get('risks', []) if risks: print(f"⚠️ Risques identifiés:") for i, risk in enumerate(risks, 1): print(f" {i}. {risk}") print("\n✅ Analyse terminée avec succès!") else: print(f"❌ Erreur: {response.status_code}") print(f"Message: {response.text}") except requests.exceptions.ConnectionError: print("❌ Erreur: Impossible de se connecter à l'API backend") print("Vérifiez que le backend est démarré sur http://localhost:18000") except Exception as e: print(f"❌ Erreur: {e}") if __name__ == "__main__": if len(sys.argv) > 1: document_id = sys.argv[1] else: document_id = "doc_20250910_232208_10" # ID par défaut analyze_document(document_id)