Notebook d’initiation web scraping et cartographie

Le 15 décembre dernier j’ai eu l’honneur d’intervenir dans un séminaire du Master Sciences du Langage – Parcours Lexicographie, terminographie et traitement automatique de corpus (LTTAC) de l’Université de Lille, où j’ai moi-même été étudiant il y a quelques années.

À cette occasion, j’ai mis en place une activité pratique sous forme de notebook Jupyter. Celui-ci s’adresse à un public qui ne connaît pas Python, et l’objectif de l’activité est de produire une représentation cartographique à partir de données extraites d’une page web.

Le notebook Jupyter présenté dans cet article est disponible sur Github. Comme il avait vocation à être manipulé via Binder par les étudiant(e)s je n’ai pas dupliqué le dépôt sur Gitlab. Si vous utilisez uniquement Gitlab et souhaitez télécharger le notebook, n’hésitez pas à me contacter.

Contexte

Comme indiqué précédemment, je suis titulaire d’un Master LTTAC, et c’est suite à cette formation que je suis devenu ingénieur. Les membres de la promotion LTTAC actuelle pourraient donc tout à fait envisager une carrière similaire après la passation de leur diplôme : ma présentation visait donc à montrer comment s’est construit mon parcours, et donner un aperçu de mon travail.

Pour la partie pratique, j’ai donc voulu proposer quelque chose d’aussi proche que possible de mes activités en conditions réelles. J’ai ainsi choisi d’utiliser Python 3, le langage que j’utilise le plus fréquemment, pour réaliser une tâche qui m’est très souvent demandée, à savoir du web scraping. J’ai ajouté une petite tâche de représentation visuelle avec la production d’une carte, d’une part pour montrer un traitement qui ne se limite pas au contenu textuel, d’autre part pour clore l’activité sur la satisfaction d’aboutir à un résultat concret, perceptible visuellement.

Cependant, Python ne fait pas partie des langages étudiés dans le cadre de la formation en LTTAC1. Par ailleurs au vu de la situation sanitaire mon intervention s’est déroulée à distance, chaque participant(e) utilisant alors son propre ordinateur. Le notebook du TP est donc :

  • Utilisable même sans installation locale de Python ni Jupyter.
  • Abordable avec des connaissances de base en algorithmique et programmation (boucles, conditions, types et structures de données).
  • Pourvu d’explications écrites détaillées et accompagné d’un corrigé afin de pouvoir poursuivre ou recommencer l’activité sans mes explications orales.

Bien que ce notebook ait été spécifiquement conçu en vue de mon intervention, vous pouvez tout à fait l’utiliser à votre convenance si vous souhaitez découvrir Python ou vous initier au scraping web !

Contenu du dépôt Github

Tous les fichiers sont stockés dans un dépôt Github. Vous y trouverez notamment :

C’est grâce à Binder que les étudiant(e)s ont pu se passer d’installation locale de Python et de Jupyter pour réaliser l’activité du TP. Vous pouvez faire de même si vous voulez juste découvrir Python ou si vous ne voulez/pouvez pas l’installer sur votre machine. Si vous disposez d’une installation locale, rien ne vous empêche de télécharger et utiliser directement les fichiers. Vous aurez simplement besoin des librairies listées dans le fichier requirements.txt.

Citer ce billet : “Notebook d’initiation web scraping et cartographie”, par Alexander Delaporte. Publié sur Tekipaki le 21/01/2022. Lien : https://tekipaki.hypotheses.org/2180.
  1. Si ça n’a pas changé depuis mon passage, ce sont Perl et JavaScript qui y sont enseignés. []

Auteur/autrice : Alexander Delaporte

Ingénieur d'études au Centre de recherches linguistiques sur l'Asie Orientale

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.