Trafilatura - Explorez et scraper le Web avec cet outil Python
Bonjour à tous ! Aujourd’hui, je vais vous parler d’un nouvel allié dans notre quête pour explorer et capturer l’immensité du web : Trafilatura.
Cet outil open source codé en Python va vous permettre de collecter efficacement des textes sur des pages Web tout en simplifiant grandement la tâche des développeurs et utilisateurs. Plongeons ensemble dans les détails.
Trafilatura est à la fois un logiciel en ligne de commande et une lib Python (+ R) développé pour répondre aux besoins spécifiques que sont le crawling mais aussi l’extraction et le traitement de texte à partir de sources Internet**.**
L’outil est également capable de récupérer des métadonnées ou encore des commentaires issus des pages webs. L’idée derrière ce projet c’est réussir à ne pas se perdre dans cette jungle HTML en ne conservant que l’essentiel du contenu et en faisant abstraction du reste (sidebar, header, footer…etc). Le challenge ici est donc d’éliminer ces “éléments parasites” inutiles et de pouvoir accéder uniquement au contenu intéressant.
Pour l’installer, c’est hyper simple avec pip :
pip install trafilatura
Et pour le code, voici un exemple d’utilisation :
from trafilutura import fetch_url, extract downloaded = fetch_url('https://korben.info') result = extract(downloaded) print(result['content']) # Affiche seulement le contenu principal.
Maintenant que vous avez une idée de ce à quoi sert Trafilatura, parlons un peu plus en détail des fonctionnalités dispo. Trafilatura est capable de gérer les sitemaps (txt et xml) ainsi que les flux (atom, json, rss). Vous pouvez lui donner des listes de liens à récupérer mais également filtrer certains contenus, voire les dé-dupliquer si besoin.
Au niveau des sources, comme je le disais, il peut prendre en entrée une simple URL mais vous pouvez aussi lui passer directement le HTML. Il gère bien les demandes, ce qui évitera de se faire bloquer par les serveurs et vous pourrez lancer plusieurs récupérations en parallèle. Au niveau des données récupérées, je vous ai parlé des métadonnées et du texte, mais il peut aussi récupérer les liens, la mise en forme HTML et les commentaires des gens sur les pages.
Au niveau de la sortie, il peut vous pondre du texte, du CSV, du JSON ou encore du XML.
Vous pouvez également l’appeler directement depuis votre terminal comme ceci :
trafilatura -u "https://korben.info"
En résumé, Trafilatura est un outil vraiment intéressant pour tous ceux qui travaillent avec des données en provenance du web et qui veulent aller directement à l’essentiel.