Pipeline ETL automatisé pour la collecte et l’analyse de données massives : collecte web intelligente en plusieurs passes, prédiction du genre par apprentissage automatique, suivi qualité et tableaux de bord en temps réel avec Airflow, Spark et Elastic.
Ce projet met en œuvre un pipeline ETL prêt pour la production pour suivre les abonnements Instagram, détecter automatiquement les changements, produire des prédictions par apprentissage automatique et contrôler la qualité des données. Le système fonctionne de manière autonome, 24 h/24 et 7 j/7, une fois Docker Desktop lancé.
Le principal défi était de concevoir un système robuste équilibrant fréquence de collecte, mécanismes anti-détection et assurance qualité tout en maintenant une opération 24/7 autonome.
Figure 1 - Vue d'ensemble haut niveau du pipeline de surveillance Instagram
Le pipeline ETL suit une architecture microservices modulaire orchestrée par Apache Airflow avec conteneurisation Docker complète.
Le système s'exécute selon un planning précis (fuseau Europe/Paris) :
data/
├── raw/ # Données JSON brutes issues de la collecte
│ └── YYYY-MM-DD_HH-MM-SS/
├── formatted/ # Données nettoyées et prédictions
│ └── YYYY-MM-DD_aggregated/
└── usage/ # Agrégations et comparaisons quotidiennes
└── YYYY-MM-DD_comparatif/
Figure 2 - Architecture système complète avec tous les microservices
Pipeline en trois étapes combinant collecte web avec Selenium, traitement PySpark et stockage dans plusieurs systèmes.
Figure 3 - Étapes du pipeline ETL : Extraction, Transformation et Chargement
Système de contrôle de la complétude et de la précision des collectes, conçu pour éviter les faux positifs.
Figure 4 - Métriques de suivi qualité montrant les scores de complétude au fil du temps
Mécanismes visant à limiter les risques de restriction du rythme des requêtes et de suspension de compte par Instagram.
Visualisation avec Flask et Kibana, et suivi de l’exécution dans Airflow.
Figure 5 — Tableau de bord Flask : vue d’ensemble et statistiques détaillées
Figure 6 — Tableau de bord Kibana : tendances et agrégations
Figure 7 — DAG Airflow montrant l’exécution du flux automatisé
Architecture complète de microservices avec Docker Compose, automatisation par Makefile et possibilité de déploiement cloud.
Figure 8 - Architecture de conteneurisation Docker avec tous les services
Ce projet présente un pipeline ETL de suivi Instagram prêt pour la production et autonome, 24 h/24 et 7 j/7. L’architecture associe Selenium, Airflow, PySpark et les services Elastic, avec contrôles qualité automatisés, mécanismes limitant la détection automatisée et déploiement Docker simplifié.
Les évolutions prévues comprennent une analyse des profils par apprentissage automatique avancé, des alertes en temps réel, une API REST, la prise en charge d’autres plateformes et des analyses de réseau plus approfondies.
Statut : Prêt pour la production et fonctionnement continu
Déploiement : Conteneurisation Docker avec prise en charge d’Oracle Cloud
Contact : Pour toute question technique, contacter Martin LE CORRE
Ce projet est fourni uniquement à des fins pédagogiques et de recherche. Son utilisation doit respecter les conditions d’utilisation d’Instagram et la réglementation sur la protection des données, notamment le RGPD.