#!/usr/bin/perl
open(FILEIN,"$ARGV[0]"); # ouverture du fichier en lecture
open(FILEOUT,">resultats.txt"); # ouverture du fichier en écriture, les résultats seront concaténés dans le fichier "résultats.txt" qui sera créé dans le même répertoire
$i=1; # début du compteur à 1
while ($ligne = <FILEIN>){ # boucle WHILE qui lit le fichier en lecture
	if ($ligne=~/<description>([^<]+)<\/description>/) { # boucle IF avec l'expression régulière qui cherche les chaînes de caractères situées entre les balises de <description>
			my $recup=$1; # on crée la variable "recup" qui réfère à $1 (c'est pour les problèmes d'encodages qui apparaissent)
			if ($recup=~/^(.+)&lt;img width='1' height='1'.*$/) {$recup=$1};
				$recup=~s/&#38;#39;/\'/g; # commande de recherche-remplacement pour '
				$recup=~s/&#38;#34;/\"/g; # commande de recherche-remplacement pour "
				$recup=~s/&#233;/é/g; # commande de recherche-remplacement pour é
				$recup=~s/&#234;/è/g; # commande de recherche-remplacement pour è
				$recup=~s/&amp;eacute;/é/g;
                $recup=~s/&amp;egrave;/è/g;
				$recup=~s/&amp;ecirc;/ê/g;
				$recup=~s/&amp;euml;/ë/g;
				$recup=~s/&amp;iuml;/ï/g;
                $recup=~s/&amp;icirc;/\î/g;
                $recup=~s/&amp;ocirc;/\ô/g;
                $recup=~s/&amp;ccedil;/\ç/g;
                $recup=~s/&amp;agrave;/\à/g;
				$recup=~s/&amp;acirc;/â/g;
				$recup=~s/&amp;uuml;/ü/g;
				$recup=~s/&amp;ucirc;/û/g;
				$recup=~s/&amp;ugrave;/ù/g;
				$recup=~s/&amp;Ouml;/Ö/g;
                $recup=~s/&#38;/&/g;
                $recup=~s/&lt;/\</g;
                $recup=~s/&gt;/\>/g;
				next if $recup =~/Toute *l.*actualit.* *au *moment *de *la *connexion/; # suppression des lignes "Toute l'actualité au moment de la connexion"
				next if $recup =~/Retrouvez *l.*ensemble *des/; # suppression des lignes "Retrouvez l'ensemble des dépèches sur http://www.lemonde.fr"
				next if $recup =~/Lisez *l.*int.*gralit.* *de *l.*article *pour *plus *d.*information./; # suppression des lignes "Lisez l'intégralité de l'article pour plus d'information."
				print FILEOUT "Description n° $i : $recup \n"; # on imprime la chaîne de caractères des <descritpion> en les numérotant
			$i++; # on ajoute 1 au i précédent
	}
}
close(FILEIN); # fermeture du fichier en lecture
close(FILEOUT); # fermeture du fichier en écriture
