Script
SCRIPT N°1
********************DEBUT DU PROGRAMME*******************

#!/bin/bash

*************SAISIE DES DONEES PAR L'UTILISATEUR************
echo "Donnez le nom du dossier contenant les fichiers de liens http : "
read dossier
echo "Donnez le nom du fichier html où stocker ces liens dans des tableaux : "
read tablo
echo "Donne le nom du fichier contenant le motif recherché sur les pages originales : "
read motif
************DEBUT DU FICHIER HTML*************************
echo "<html><head><title>tableau de liens</title></head><body>" > $tablo
i=1
*******DEBUT DE LA BOUCLE PRINCIPALE:lecture des fichiers*******
for fichier in `ls $dossier`
{
*******CONSTRUCTION DES BORDURES DU TABLEAU**************  
echo "<table border=1>" >> $tablo
   
    echo "<tr><td align="center" bgcolor=\"silver\" colspan=\"4\"><b>Fichier $fichier</b></td></tr>" >> $tablo
******DEBUT DE LA BOUCLE IMBRIQUEE: lecture des URLS**********  
 for nom in `cat $dossier/$fichier`
    {
echo "voici le nom de FICHIER " $nom   
********************ASPIRATION DES FICHIERS****************
wget -O ./PAGESASPIREES1/$i.html $nom
      
*********************DUMPER LES PAGES*********************
    lynx -dump $nom > ./DUMP1/$i.txt
********RECHERCHE DU MOTIF ET FILTRAGE DU CONTEXTE*********
    egrep -i "\b$motif\b" ./DUMP1/$i.txt > ./CONTEXTE1/$i.txt
    echo "<tr><td><a href=\"$nom\">$nom</a></td><td><a href=\"./PAGESASPIREES1/$i.html\">PAGE ASPIREE</a></td><td><a href=\"./DUMP1/$i.txt\">PAGE DUMP</a></td><td><a href=\"./CONTEXTE1/$i.txt\">PAGE CONTEXTE</a></td></tr>" >> $tablo
    let "i+=1"
    }

******************FIN DE LA BOUCLE IMBRIQUEE***************   
echo "</table>" >> $tablo

    echo "<br>" >> $tablo

}
*****************FIN DE LA BOUCLE PRINCIPALE****************
echo "</body></html>" >> $tablo
*************************FIN DU CODE**********************





SCRIPT N°2

*********************DEBUT DU PROGRAMME******************

#!/bin/bash
*************SAISIE DES DONNEES PAR L'UTILISATEUR***********
echo "Donnez le nom du dossier contenant les fichiers de liens http : "
read dossier
echo "Donnez le nom du fichier html o stocker ces liens dans des tableaux : "
read tablo
************DEBUT DU FICHIER HTML*************************
echo "<html><head><title>tableau de liens</title></head><body>" > $tablo
i=1
for fichier in `ls $dossier`
{
    echo "<table border=1>" >> $tablo
   
    echo "<tr><td align="center" bgcolor=\"silver\" colspan=\"4\"><b>Fichier $fichier</b></td></tr>" >> $tablo
    for nom in `cat $dossier/$fichier`
    {
echo "voici le nom de FICHIER " $nom   

***********POUR UTILISER LES PAGES ASPIREES RECUPEREES VIA LE PREMIER SCRIPT ET POUR NE PAS LES ECRASER NOUS METTONS WGET EN COMMENTAIRE*******************************************


#wget -O ./PAGESASPIREES1/$i.html $nom


***********POUR UTILISER LES PAGES DUMP RECUPEREES VIA LE PREMIER SCRIPT ET POUR NE PAS LES ECRASER NOUS METTONS LYNX EN COMMENTAIRE******************************************
       
   
    #lynx -dump $nom > ./DUMP1/$i.txt
                                                
**********UTILISATION DU PROGRAMME PERL POUR EXTRAIRE LES MOTIFS EN JAPONAIS. IL  S'UTILISE AINSI :   perl mini-grep-multilingue.pl \"UTF-8\" RU_Convention_UTF8.txt motif.txt***************************************************
                                                      

                          perl ./PROGRAMMES1/mini-grep-multilingue.pl "UTF-8" ./DUMP1/$i.txt ./PROGRAMMES1/motifjaponais.txt
                          mv resultat-extraction.html ./CONTEXTE/$i.html
                                                                    
   
   
    echo "<tr><td><a href=\"$nom\">$nom</a></td><td><a href=\"./pagesaspirees1/$i.html\">PAGE ASPIREE</a></td><td><a href=\"./DUMP1/$i.txt\">PAGE DUMP</a></td><td><a href=\"./CONTEXTE/$i.html\">PAGE CONTEXTE</a></td></tr>" >> $tablo
    let "i+=1"
    }
******************FIN DE LA BOUCLE IMBRIQUEE***************   

    echo "</table>" >> $tablo
    echo "<br>" >> $tablo

}
*****************FIN DE LA BOUCLE PRINCIPALE****************
echo "</body></html>" >> $tablo

*************************FIN DU CODE**********************



SCRIPT PERL

*******************NOUS AVONS UTILISE CE SCRIPT POUR EXTRAIRE LES MOTIFS EN JAPONAIS.
CEPENDANT, NOUS AVONS PLUSIEURS MOTIFS DIFFERENTS DONC NOUS AVONS CHANGE LA LIGNE 65 DU SCRIPT:
$formein=~/MOTIF=(\w+)$/;************************************

#!/usr/bin/perl
use locale;
use English;
use Getopt::Std;
use Encode::Encoding;
use Encode::CN;
use Encode::KR;
use Encode::TW;
use Encode::JP;
use Unicode::String qw(utf8);

my $VERSION="2.0";
my $CMD="minigrepmultilingue";
my $MODIFIED="16/12/2007";
my $HELP="
_______________________________________________________________

$CMD $VERSION (c) Serge Fleury, Pierre Marchal SYLED/CLA2T PLURITAL $MODIFIED
_______________________________________________________________

OBJECTIF : un mini-grep-multilingue

SYNTAXE :   $CMD [options] <fichier-codage> <fichier-a-filtrer> <fichier-avec-motif>

OPTIONS :
  -h        imprime le mode d'emploi de ce programme

EXEMPLES:
    perl mini-grep-multilingue.pl \"UTF-8\" RU_Convention_UTF8.txt motif.txt

________________________________________________________________


";
##################################################
# parse command line
##################################################
getopts('hdt');
if (defined($opt_h)) {
  print STDERR "$HELP";
  exit(1);
}
#----------------------------------------------------------------------------
if ((!($ARGV[0])) || (!($ARGV[1])) || (!($ARGV[2])))  {
    print "___________________________________________________\n\nERREUR : Le programme necessite 3 arguments : \n 1. un encodage,\n 2. un fichier a filtrer,\n 3. un fichier contenant le motif à filtrer \n\n";
    print "Exemple de lancement : \n";
    print "________________________________________________________\n\n";
    print "perl mini-grep-multilingue.pl \"UTF-8\" RU_Convention_UTF8.txt motif.txt \n\n";
    exit;
}
##################################################
# A. Lecture des arguments du programme
my $tmpcodage=$ARGV[0];
chomp($tmpcodge);
my $filein=$ARGV[1];
print "Fichier en entree : $filein \n";
my $filewithforme=$ARGV[2];
my $fileout="resultat-extraction.html";
##################################################
print "extraction du motif...\n";
# B. le fichier contenant la forme à extraire
open(FILE0,"<:encoding($tmpcodage)",$filewithforme) or die "Pb sur l'ouverture du fichier $filewithforme !!! ";
my $formein=<FILE0>;
chomp($formein);
$formein=~/MOTIF=(.+)$/;
my $forme=$1;
utf8($forme);
#print "Forme a rechercher : $forme \n";
close(FILE0);
##################################################
my $points="...";
utf8($points);
##################################################
print "extraction de la forme et ecriture du resultat dans $fileout \n";
# C. Parcours du fichier et extraction du motif
open(FILEIN,"<:encoding($tmpcodage)",$filein) or  die "Pb sur l'ouverture du fichier $filein !!! ";
open(FILEOUT,">:encoding(UTF-8)",$fileout) or  die "Pb sur l'ouverture du fichier $fileout !!! ";

print FILEOUT "<html>\n<head>\n<title>mini-egrep multi-encodage pour le projet : la vie des mots sur le web</title>\n";
print FILEOUT "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf8\" />\n";
print FILEOUT "<body bgcolor=\"white\">\n";
print FILEOUT "<p align=\"justify\"><font color=\"blue\"><b>Fichier de travail (INPUT) :</b></font> $filein </p>\n";
print FILEOUT "<p align=\"justify\"><font color=\"blue\"><b>Encodage utilisé (INPUT) :</b></font> $tmpcodage </p>\n";
print FILEOUT "<p align=\"justify\"><font color=\"blue\"><b>Forme recherchée :</b></font> <font color=\"red\">$forme</font> </p>\n";
print FILEOUT "<font color=\"blue\">___________________________________________________ </font>\n";
my $i=1;
print FILEOUT "<blockquote>\n";
print FILEOUT "<ul>\n";

my $verif=0;
my $ligne_haut;

while (my $ligne=<FILEIN>)  {
    utf8($ligne);

    # si la ligne precedente contenait le motif on l'imprime : contexte apres
    if ($verif == 1) {
    unless ($ligne=~/^\s*$/) {
        print FILEOUT "<font color=\"#3366CC\"><i>Ligne n°",$i,"</i></font> : <font color=\"#3366CC\"><i>$ligne$points</i></font>";
        print FILEOUT "<br/>";
    }
    $verif=0;
    }

    while ($ligne =~/$forme/g) {
    my $gauche = $`;
    my $droite = $';
    my $test=0;
    # si le motif est trouve, il faut affiche 1 seule fois le contexte precedent stocke (cf infra)
    if (($ligne_haut ne "-------LIGNE_HAUT_DEJA_INSEREE----------------") && ($ligne_haut ne "")) {
        print FILEOUT "<br/><font color=\"#3366CC\"><i>Ligne n°",$i-1,"</i></font> : <font color=\"#3366CC\"><i>".$points.$ligne_haut."</i></font>";
        $test=1;
        $ligne_haut="-------LIGNE_HAUT_DEJA_INSEREE----------------";
    }
    unless ($test == 1) {
        print FILEOUT "<br/>"; #imprimer un retour à la ligne si ligne du haut non affichée
    }
    print FILEOUT "<li><font color=\"blue\"><b>Ligne n°$i</b></font> : $gauche<font color=\"red\"><b>$forme<\/b><\/font>$droite </li>";
    $verif=1;

    }     

    # on stocke la ligne qui peut devenir le contexte precedent la prochaine recherche du motif
    if ($ligne=~/^$/) {
    $ligne_haut="";
    }
    else {
    $ligne_haut=$ligne;
    }
    $i++;
   
}
print FILEOUT "</ul>\n";
print FILEOUT "</blockquote>\n";
print FILEOUT "</html></body>";
#################################################
close(FILEIN);
close(FILEOUT);
#################################################


**********************************************************

MOTIF: "|" EQUIVAUT A OU**************************************
MOTIF=バゲット|箸|棒|スティック