L'extraction du titre et de la description

L'objectif de BÀO 1 est de parcourir les répertoires de fichiers RSS et d'extraire par rubrique le titre et la description de chaque article (La rubrique choisie ici est "À la une").

Deux solutions pour cette tâche d'extraction :

- la méthode Perl avec l'expression régulière
- la méthode Perl avec la bibliothèque XML::RSS

Sorties :

Il y a deux fichiers de résultat. L'un est en format de texte brut et l'autre est un fichier xml avec des balises.

Parcourir l'arborescence

Le corpus Le Monde RSS de l’année 2015 se compose de plusieurs répertoires organisés en rubriques et date d’aspiration des fils. Pour pouvoir traiter ces fichiers, il faut une partie du script qui peut parcourir l'aborescence.

L'idée du script est assez simple : on ouvre un dossier et on teste si ses éléments sont des fichiers xml ou pas. Si oui, on extrait ce qu’on veut en utilisant le script d'extraction. Si ce sont des dossiers, on ouvre les dossiers un par un et on refait le teste. On peut ainsi parcourir toute arborescence jusqu’à trouver les fichiers xml.


L'extraction avec les expressions régulières

En fait, c'est assez facile d'extraire ce qu'on veut dans le fichier RSS. Parce que chaque partie est englobée dans des balises spécifiques. Ce qu'on doit faire, c'est d'extraire le contenu entre les balises "titre" et "description".

example graphic

L'expression régulière utilisé :

example graphic

L'extraction avec la bibliothèque XML::RSS

XML::RSS vise à créer et mettre à jour les RSS files. La syntaxe d’utilisation est suivante :

example graphic

Pour utiliser le module, il faut l'installer au départ. Comme j'utilise le Perl qui est pré-installé dans mon Mac, je l'ai installé par CPAN : la bibliothèque de modules. les commandes pour installer sont suivantes :

$ sudo perl -MCPAN -e shell
cpan> install nomDeModule

POO : programmation orientée objet

La POO est une méthode de programmation née de réflexions sur la qualité et le coût de la création et de l'entretien d'un programme. En effet, il a été constaté que de 70 à 80% du coût d'un programme provient de la phase de maintenance et non de celle de création pure.

Le but de la POO est de réduire ce coût. Pour cela, on a fixé des critères de qualité d'un programme POO. Ils sont au nombre de quatre :

la Validité : respect du cahier des charges ;
l'Extensibilité : permettre l'ajout de fonctionnalités ;
la Réutilisabilité : permettre l'utilisation d'un même composant pour différentes applications ;
la Robustesse : consiste en un traitement des exceptions.

Les références

On sait bien que dans le dictionnaire de Perl, la valeur doit être un scalaire. Si l'on veut donner une clé plusieurs valeurs, on peut stocker les valeurs dans une référence scalaire.

pour output le contenu de la référence en Perl syntaxe, il faut utiliser un autre module Data::Dumper.

use strict et use warning

Ecrire du code Perl est à la portée de (presque) tout un chacun. Rendre ce code propre et facile à maintenir, dans le but de le diffuser par exemple, est une autre paire de manche.

Le compilateur Perl propose pour cela deux outils, très fréquemment utilisés du reste. Ce sont les pragmas (directives de compilateur) strictet warnings, appelés comme suit :

#!/usr/bin/perl
use strict;
use warnings;

Téléchargement