#!/usr/bin/env python3
"""
Script de test pour le scraping Instagram avec yt-dlp
"""

import yt_dlp
import json
import logging

# Configuration du logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)

def get_video_info(url):
    """Récupère les informations de la vidéo Instagram avec yt-dlp"""
    ydl_opts = {
        'quiet': True,
        'no_warnings': True,
    }
    
    try:
        with yt_dlp.YoutubeDL(ydl_opts) as ydl:
            logger.info(f"🔍 Extraction des infos de: {url}")
            result = ydl.extract_info(url, download=False)
            
            duration = result.get('duration')
            description = result.get('description')
            
            # Recherche des mots-clés dans la description
            keywords = ["Palia", "CROSSPLAY"]
            found_keywords = [kw for kw in keywords if kw in (description or "")]
            
            if duration:
                logger.info(f"✅ Durée trouvée: {duration} secondes")
            else:
                logger.warning("❌ Durée non trouvée")
                
            if description:
                logger.info(f"✅ Description trouvée: {description[:100]}...")
                if found_keywords:
                    logger.info(f"✅ Mots-clés trouvés: {', '.join(found_keywords)}")
            else:
                logger.warning("❌ Description non trouvée")
            
            return {
                "duration": duration,
                "description": description,
                "url": url
            }
            
    except Exception as e:
        logger.error(f"❌ Erreur: {str(e)}")
        import traceback
        traceback.print_exc()
        return None

if __name__ == "__main__":
    url = "https://www.instagram.com/reel/DMpc37-tJdF/"
    result = get_video_info(url)
    
    if result:
        print("\n📊 Résultats:")
        print(json.dumps(result, indent=2, ensure_ascii=False))
