BàO1

Extraction du contenu textuel

Le contenu textuel de chaque rubrique des fils RSS du journal Le Monde est composé de plusieurs titres accompagnés de leurs descriptions respectives. Extraire le contenu signifie parcourir les fichiers XML, repérer le contenu textuel pertinent (titres, descriptions et dates), le nettoyer et, enfin, le sauvegarder dans un fichier texte brut et dans un fichier XML bien formé.

Méthode 1 : expressions régulières

La façon la plus efficace de récolter ces titres et leurs descriptions est l'utilisation d'expressions régulières. On a créé deux programmes, en Perl et en Python, qui suivent la même stratégie : étant donné que l’on a accès à un répertoire de dossiers contenant tous les fils RSS, on les parcourt récursivement et on isole et nettoie le texte pertinent en utilisant des expressions régulières. On évite dans ce processus les doublons. Il s'agit, sans doute, de la méthode la plus rapide, surtout en Python.

Langage Méthode Téléchargement
Perl Expressions régulières
Python Expressions régulières

Méthode 2 : parser XML::RSS

Cette fois-ci, on a utilisé la bibliothèque Perl XML::RSS, un module qui nous permet de gérer, créer et explorer des RSS. En particulier, on a utilisé le parser XML dédié au traitement de fils RSS. Il s'agit d'une méthode assez pratique, qui donne des résultats très ordonnés. Néanmoins, le traitement est considérablement plus lent. Pour accéder aux fichiers, on a parcouru les dossiers récursivement comme dans la méthode précédente.

Langage Méthode Téléchargement
Perl Bibliothèque XML::RSS

Méthode 3 : XSLT

La dernière méthode consiste à écrire une feuille de style XSLT et à l'appliquer via un script Perl, en utilisant le programme xsltproc. Ainsi, on transforme le fichier XML afin d’extraire le contenu textuel. Il suffit de sélectionner dans la feuille de style les items de l'arborescence que l’on a besoin de récupérer.

Langage Méthode Téléchargement
Perl XSLT (via xsltproc)
XSLT Feuille de style

Précision : Il faut télécharger certains fichiers pour pouvoir bien les afficher.

Résultats

Tous les scripts produisent exactement le même résultat. De nouveau, la version Python offre un traitement plus rapide, suivie par le script Perl, via des expressions régulières.

Fichier Rubrique Téléchargement
Texte 3208 - "À la une"
XML 3208 - "À la une"
Texte 3232 - "Idées"
XML 3232 - "Idées"
Texte 3260 - "Livres"
XML 3260 - "Livres"
Texte 3476 - "Cinéma"
XML 3476 - "Cinéma"

Précision : Il faut télécharger certains fichiers pour pouvoir bien les afficher.