Atelier Python II
AU.2024-2025
TP 3.1 Web Scraping
Objectifs
Maîtriser l’extraction de données structurées sur plusieurs pages
Automatiser le traitement et l’enregistrement des données (CSV, JSON)
Nettoyer les textes extraits et structurer les données de manière exploitable
Exercice1
Scraper les données des titres et auteurs sur une page Wikipédia des Prix Nobel :
Ex. [Link]
Objectif final : Générer un fichier [Link] contenant :
Année
Nom du lauréat
Pays (si disponible)
Astuce : les tables HTML sur Wikipédia peuvent être traitées avec pandas.read_html() ou
BeautifulSoup + sélecteurs CSS.
Exercice2 : Scraping paginé
Extraire tous les livres disponibles sur plusieurs pages depuis [Link]
Travaux attendus :
Naviguer sur au moins 3 pages
Extraire pour chaque livre :
o Titre
o Prix
o Évaluation (par nombre d’étoiles)
o Disponibilité
Sauvegarde des résultats dans [Link]
Consigne avancée : Créer une fonction scrape_page(url) pour rendre le code réutilisable.
Astuce : la pagination est dans la balise <li class="next">.
1
Atelier Python II
AU.2024-2025
Exercice3 : Scraping d’une table structurée
Depuis [Link] extraire les données de la
table des pays par PIB :
Travaux attendus :
Pays
PIB en milliards de dollars
Classement
Outils autorisés :
pandas.read_html() ou
BeautifulSoup avec extraction de balises <table>
Objectif final :
Nettoyer les données
Exporter vers pib_pays.csv
Exercice 4 : Mini-projet
Scraper les actualités récentes (titres + date) depuis [Link] ou
[Link]
Travaux attendus :
Extraire :
o Titre
o Lien vers l’article
o Date (si disponible)
Stocker dans un fichier JSON : [Link]
Difficulté :
Identifier les bonnes balises
Nettoyer les chaînes de caractères
Gérer les encodages
✅ Livrables à rendre :
[Link]
pib_pays.csv
[Link]
Les scripts .py bien commentés