Ce projet permet de récupérer automatiquement la transcription d'une vidéo YouTube, de la synthétiser via une IA (Cloud ou Locale) et d'envoyer le résultat directement dans une base de données Notion.
Avant de commencer, assurez-vous d'avoir installé les logiciels suivants sur votre machine :
- Python (version 3.8 ou supérieure) : Télécharger Python
- Note : Cochez bien la case "Add Python to PATH" lors de l'installation.
- Git (optionnel, pour cloner le projet) : Télécharger Git
- Ollama (uniquement si vous souhaitez utiliser l'IA en local) : Télécharger Ollama
Si vous avez Git, ouvrez un terminal et tapez :
git clone <URL_DU_DEPOT>
cd "katalog"Sinon, téléchargez le fichier ZIP depuis GitHub, extrayez-le et ouvrez le dossier dossier extrait.
Ouvrez un terminal dans le dossier du projet (là où se trouve le fichier requirements.txt) et exécutez la commande suivante pour installer les bibliothèques nécessaires :
pip install -r requirements.txtLe fichier config.json contient tous les réglages. Vous devez le modifier avec vos propres clés API.
Ouvrez le fichier config.json avec un éditeur de texte (Bloc-notes, VS Code, etc.).
Conseil : Pour vous faciliter la tâche, vous pouvez dupliquer ce modèle Notion qui contient déjà toutes les propriétés nécessaires : Lien vers le template
Pour que le script puisse écrire dans votre Notion, il faut deux éléments :
- Token d'intégration : Créez une nouvelle intégration sur Notion Developers. Copiez le "Internal Integration Secret".
- ID de la base de données : Ouvrez votre base de données Notion dans le navigateur. L'ID se trouve dans l'URL après
notion.so/et avant le?.- Exemple :
https://www.notion.so/mon-espace/251ac440c2c081cf9245d450db9291f1?v=... - Important : N'oubliez pas de connecter votre intégration à la page de la base de données (menu "..." en haut à droite > "Add connections" > Sélectionnez votre intégration).
- Exemple :
Remplissez les champs dans config.json :
"notion": {
"token": "VOTRE_TOKEN_NOTION",
"database_id": "VOTRE_DATABASE_ID"
}Vous pouvez choisir entre utiliser OpenRouter (Cloud, payant ou gratuit selon le modèle) ou Ollama (Local, gratuit mais demande un bon PC).
Modifiez la ligne "provider" dans config.json :
- Pour le Cloud :
"provider": "openrouter" - Pour le Local :
"provider": "ollama"
- Créez un compte sur OpenRouter.
- Générez une clé API.
- Ajoutez-la dans
config.json:
"openrouter": {
"api_key": "VOTRE_CLE_OPENROUTER",
"model": "google/gemini-2.0-flash-lite-preview-02-05:free"
}Note : Vous pouvez changer le modèle selon vos préférences.
- Assurez-vous qu'Ollama est installé et lancé.
- Téléchargez le modèle souhaité (par exemple
qwen2.5:7b) via la commande :ollama pull qwen2.5:7b - Mettez à jour
config.json:
"ollama": {
"url": "http://localhost:11434/api/generate",
"model": "qwen2.5:7b"
}Pour envoyer facilement les vidéos YouTube vers votre serveur, installez l'extension Chrome/Edge incluse.
- Ouvrez votre navigateur (Chrome, Edge, Brave...).
- Allez dans la gestion des extensions (tapez
chrome://extensionsouedge://extensionsdans la barre d'adresse). - Activez le Mode développeur (souvent un switch en haut à droite ou à gauche).
- Cliquez sur le bouton "Charger l'extension non empaquetée" (Load unpacked).
- Sélectionnez le dossier de ce projet.
- L'icône de l'extension devrait apparaître dans votre barre d'outils.
Avant d'utiliser l'extension, le serveur Python doit être démarré.
Ouvrez un terminal dans le dossier du projet et lancez :
python ia_processor.pyLe serveur va démarrer et afficher qu'il écoute sur le port 5006. Laissez cette fenêtre ouverte.
- Allez sur une vidéo YouTube qui contient des sous-titres (même automatiques).
- Cliquez sur l'icône de l'extension dans votre navigateur.
- Cliquez sur le bouton "Analyser la vidéo".
- Patientez quelques instants...
- Le serveur va télécharger les sous-titres.
- L'IA va générer le résumé.
- Le résultat sera envoyé sur Notion.
- Une notification vous confirmera que la fiche a été créée.