Module 8 - Plan d’apprentissage
STT-1100 Introduction à la science des données
🎯 Objectifs du module
À la fin de ce module, vous devriez être capable de :
- Extraire des données textuelles d’une page web en utilisant
rvest. - Automatiser des tâches répétitives à l’aide de boucles et de fonctions en R.
- Identifier les aspects éthiques liés à la collecte automatisée de données en ligne.
📚 Lectures
Pour vous préparer, consultez les ressources suivantes :
🧭 Aventure
Vous incarnez un·e consultant·e freelance engagé·e pour développer une fonction d’extraction automatisée de métadonnées à partir du portail Données Québec.
Lien vers l’aventure :
👉 Aventure 8 — Données ouvertes du Québec
💡 Défi — Fonction de scraping
Vous devrez concevoir une fonction scrape_page(url) qui :
- prend en entrée une URL d’une page de recherche de Données Québec ;
- retourne un
data.frameavec les colonnestitre,producteur,categorie.
📁 Vous remettrez cette fonction dans un fichier IDUL.R dans votre dépôt GitHub. Elle sera testée automatiquement sur plusieurs pages.
🏋️ Exercices de consolidation
Ces exercices utilisent une page différente du portail Données Québec, afin de pratiquer dans un autre contexte.
Utilisez la version archivée de la page IMDb des 250 meilleurs films : 👉 https://web.archive.org/web/20220201012049/https://www.imdb.com/chart/top/
Lire la page HTML
➤ Utilisezread_html()puishtml_nodes()pour observer les sections contenant les titres des films.Extraire les titres des films
➤ Essayezhtml_nodes(..., ".titleColumn a") %>% html_text().Extraire les années
➤ Utilisezhtml_nodes(..., ".titleColumn span")pour extraire les années entre parenthèses.Extraire les notes
➤ Utilisezhtml_nodes(..., ".imdbRating strong")pour obtenir les cotes de chaque film.Construire un tableau
➤ Combinez les trois vecteurs (titre,année,note) dans undata.frame.Réflexion éthique
➤ Vérifiez si l’archive de la page IMDb (ou IMDb directement) autorise le scraping en consultant leur robots.txt.