Étape 2 de 7

Collecte des données

Extraction continue des métadonnées, commentaires et audio via yt-dlp

Date de dernière mise à jour : 2026-04-04 16:43
24,676 Vidéos collectées
7.6M+ Commentaires extraits
20,999 Vidéos transcrites
Flux de données

Pipeline de mise à jour continue

Entrée Chaînes YouTube surveillées
Traitement yt-dlp + scanner continu
Sortie Audio + métadonnées + commentaires → PostgreSQL
Méthodologie

Comment ça fonctionne

Le scanner parcourt régulièrement les chaînes pour détecter les nouvelles vidéos publiées. Les métadonnées de chaque vidéo (vues, likes, abonnés) sont enregistrées à chaque scan, produisant un historique longitudinal.

Pour chaque vidéo détectée, l'audio est téléchargé au format WAV et les commentaires sont extraits via yt-dlp. La rotation automatique de cookies gère l'authentification et les restrictions d'accès.

L'ensemble des données est stocké dans une base PostgreSQL normalisée : métadonnées des vidéos, commentaires, transcriptions, segments par locuteur et annotations NLP. L'API REST (PostgREST) permet l'accès programmatique aux données.

Cliquez sur chaque carte pour voir les détails

Les métadonnées (nom de chaîne, nombre de vues, commentaires, abonnés, etc.) et les fichiers audio des vidéos sont extraits à l'aide de la bibliothèque yt-dlp. Le pipeline scanne les chaînes régulièrement pour détecter les nouvelles vidéos, extraire les commentaires et mettre à jour les métadonnées. Chaque vidéo détectée est automatiquement téléchargée et intégrée au corpus.

Le lot initial de plus de 15 To de données audio a été traité via l'Alliance de recherche numérique du Canada. L'infrastructure de traitement a depuis été transférée vers un réseau de machines locales des collaborateurs, permettant un traitement continu et une réactivité immédiate. Les nouvelles vidéos sont traitées en quelques minutes après leur détection.

Stack technique

Outils utilisés

yt-dlp
Python
PostgreSQL
PostgREST
Architecture des données

Schéma de la base de données

Six tables dans un schéma relationnel normalisé, des métadonnées brutes aux annotations NLP au niveau de la phrase.

# Table Description Échelle
1 videos Une ligne par vidéo : ID, métadonnées de la chaîne, vues, likes, commentaires, tags, durée, date de mise en ligne, orientation politique, pays, genre. 23,658 rows
2 comments Tous les commentaires YouTube avec infos auteur, likes, horodatages, structure de réponses imbriquées et colonne d'analyse JSONB. 7.6M+ rows
3 video_transcripts Transcriptions diarisées complètes avec étiquettes de locuteurs et versions nettoyées du texte. 20,999 rows
4 transcription_speakers Segments individuels de locuteurs issus de la diarisation, ordonnés par position dans chaque vidéo. 601,348 rows
5 comments_processed Commentaires tokenisés au niveau de la phrase avec entités NER (PER, ORG, LOC) et colonnes de prédiction ML. 9.8M+ rows
6 transcription_speakers_processed Segments de locuteurs au niveau de la phrase avec extraction NER et suite complète d'annotations. 5.3M+ rows

Observatoire en continu

La base est mise à jour en continu : scan des chaînes, transcription et annotation des vidéos, extraction de commentaires, mise à jour des métadonnées (vues, likes, abonnés). Chaque scan produit un historique longitudinal exploitable via l'API.

Date de dernière mise à jour : 2026-04-04 16:43
Aujourd'hui
vidéos transcrites
commentaires extraits
Depuis janvier
vidéos transcrites
commentaires extraits
vidéos détectées
métadonnées mises à jour
chaînes scannées
Contacter l'équipe
Une question sur les données, l'API ou le projet ? Envoyez-nous un message.
Proposer une chaîne ou fonctionnalité
Aidez-nous à enrichir le corpus YOUPOL. Proposez une chaîne YouTube politique que nous devrions suivre, ou une fonctionnalité.