PaliSkill
Python avancé

Leçon 1 / 10 — Chapitre 10: Mise en pratique : pipeline d'analyse de données

Récupérer des données depuis une API

Ce dernier chapitre construit un mini-pipeline complet : récupérer des données, les analyser, les stocker, puis les visualiser. Première étape : récupérer une liste de ventes depuis une API, avec requests (vu au septième chapitre).

import requests

reponse = requests.get("https://api.exemple.com/ventes", timeout=5)
reponse.raise_for_status()
ventes = reponse.json()
print(ventes)

Supposons que le serveur réponde avec le statut 200 et le corps JSON suivant :

# ventes = [
#     {"produit": "riz", "categorie": "alimentation", "montant": 25},
#     {"produit": "huile", "categorie": "alimentation", "montant": 40},
#     {"produit": "savon", "categorie": "hygiene", "montant": 15},
# ]

timeout=5 et raise_for_status() (vus au septième chapitre) protègent l'appel contre un serveur trop lent ou une erreur HTTP, avant même de tenter .json() — les mêmes précautions que dans tout le septième chapitre, appliquées ici au point de départ du pipeline.

ventes est une liste de dictionnaires (vue dans Python Intermédiaire), la structure de départ pour toutes les étapes suivantes du chapitre.

À vous de jouer : écrivez l'appel requests.get() avec timeout= et raise_for_status(), en supposant une réponse 200 avec une liste de ventes de votre choix.

À vous de jouer

À faire

Pourquoi appeler réponse.raise_for_status() avant réponse.json() dans un pipeline de recuperation de données ?

Copiez ce code dans un environnement Python en ligne (Google Colab, Replit, ou tout autre) pour vérifier le résultat avant de répondre.

💡 une courte réponse

À vous de jouer

À faire

Sous quelle forme Python une réponse d'API contenant plusieurs enregistrements est-elle generalement structurée, une fois decodée par .json() ?

Copiez ce code dans un environnement Python en ligne (Google Colab, Replit, ou tout autre) pour vérifier le résultat avant de répondre.

💡 une structure déjà vue dans Python Intermediaire

Quitter le module