Automatiser avec Python : fichiers, Excel et API
Automatiser avec Python (fichiers, Excel, API) est un cours de niveau intermédiaire de 5 leçons (environ 3 h 05), avec 15 exercices et 15 questions de quiz. Prérequis : Python intermédiaire (fonctions, modules, POO). Les exercices s'exécutent dans le navigateur, sans installation.
- Python
- Intermédiaire
- 5 leçons
- 3 h 05
- 15 exercices
- Exercices exécutés dans le navigateur
Le cours en bref
Ce cours vous apprend à confier à Python les tâches répétitives du quotidien d'un analyste. Vous manipulez fichiers et dossiers, convertissez CSV et JSON, produisez des classeurs Excel mis en forme, interrogez des API web de façon robuste, puis assemblez un script paramétrable, journalisé et planifiable. Tous les exercices simulent fichiers et API en mémoire, sans réseau.
Ce que tu sauras faire
- Manipuler fichiers et dossiers de façon portable avec pathlib
- Lire et écrire des fichiers CSV et JSON, y compris aux formats français
- Générer des classeurs Excel multi-feuilles mis en forme avec pandas et openpyxl
- Interroger une API web en gérant erreurs, délais, pagination et limites de débit
- Écrire du code testable sans réseau grâce à l'injection de dépendance
- Construire un script paramétrable, journalisé, idempotent et planifiable
Programme des 5 leçons
- Construire des chemins portables avec pathlib
- Lire et écrire des fichiers texte en précisant l'encodage
- Parcourir, créer, renommer et organiser des fichiers d'un dossier
pathlibLecture et écriture de fichiersOrganisation de dossiers
- 02
Lire et écrire du CSV et du JSON
- Lire et écrire des CSV avec le module csv (DictReader, DictWriter)
- Sérialiser et désérialiser des données JSON
- Choisir entre module csv, json et pandas selon le besoin
- 03
Automatiser Excel avec pandas et openpyxl
- Lire une ou plusieurs feuilles Excel avec pandas
- Produire un classeur multi-feuilles avec ExcelWriter
- Mettre en forme un rapport Excel avec openpyxl (en-têtes, largeurs, formats, formules)
Lecture et écriture ExcelMise en forme openpyxlRapport Excel automatisé
- 04
Interroger une API web
- Comprendre une requête HTTP : URL, méthode, paramètres, en-têtes, code de statut
- Interroger une API JSON avec requests en gérant erreurs, délais et pagination
- Structurer le code pour le tester sans réseau grâce à une fonction factice
Requêtes HTTPBibliothèque requestsPaginationTests avec doublures
- 05
Un script automatisé de bout en bout
- Organiser un script d'automatisation en fonctions avec un point d'entrée
- Paramétrer le script avec argparse et tracer son exécution avec logging
- Rendre le traitement robuste et planifier son exécution
Projet final
Reporting commercial automatisé
Construisez un script qui produit chaque matin le reporting commercial d'une PME. Il récupère les commandes de la veille depuis une API de boutique en ligne (simulée par une fonction factice paginée, avec limite de débit), lit les fichiers CSV de ventes des magasins déposés dans un dossier, consolide le tout, puis génère un classeur Excel mis en forme (synthèse par canal et par magasin, détail, ligne de total) et archive les fichiers traités. Le script est paramétrable en ligne de commande, journalisé, idempotent et accompagné de la ligne cron ou de la configuration du Planificateur de tâches.
Livrables
- Un module Python avec des fonctions séparées (lecture API, lecture fichiers, consolidation, export Excel, archivage) et une fonction main(argv=None)
- Une fonction factice d'API paginée et des tests (assert) couvrant pagination, reprise sur 429 et fichiers invalides
- Le classeur Excel généré avec au moins deux feuilles mises en forme et une formule de total
- Un fichier de journal d'exemple et la commande de planification documentée
Critères d'évaluation
- Le script s'exécute de bout en bout et peut être relancé sans créer de doublons
- Les erreurs (fichier invalide, API indisponible) sont isolées, journalisées et reflétées dans le code de sortie
- Les appels API utilisent timeout, contrôle du statut, pagination et reprise
- Le classeur Excel est lisible : en-têtes, formats monétaires, largeurs, volets figés
- Le code est testable sans réseau et les secrets ne sont jamais écrits en dur
Questions fréquentes
Que peut-on automatiser avec Python au bureau ?
Le rangement et le renommage de fichiers, la consolidation d'exports CSV ou Excel, la production de rapports Excel mis en forme, la récupération de données depuis des API (CRM, boutique en ligne, outils marketing) et l'exécution de ces traitements à heure fixe.
Faut-il Excel installé pour générer des fichiers Excel avec Python ?
Non. pandas et openpyxl lisent et écrivent les fichiers .xlsx directement. Excel (ou un autre tableur) n'est nécessaire que pour ouvrir le résultat et calculer les formules qui y ont été écrites.
Les exercices appellent-ils de vraies API ?
Non. Les exercices simulent les API avec des fonctions factices et les fichiers dans des dossiers temporaires ou en mémoire. Vous apprenez ainsi la technique d'injection de dépendance, qui rend aussi votre code professionnel testable.
Quel niveau faut-il pour suivre ce cours ?
Il faut être à l'aise avec les fonctions, les modules et les exceptions en Python, comme dans le cours Python intermédiaire (PY2). Des notions de pandas sont utiles pour la partie Excel.
Ce cours, raconté pour ton métier
Dis ce que tu veux savoir faire : « Automatiser avec Python (fichiers, Excel, API) » prend sa place dans ton parcours, avec des exemples de ton secteur. Les notions restent celles du cours.