jeudi 25 novembre 2010

contextes et re-contextes

Et oui ! Nous avons réussi à extraire le contexte de notre mot étudié ;) .



Nous avons utilisé cette commande :

egrep -i -n -A 1 -B 1 "$motif" fichierdentree.txt >fichierdesortie.txt

les options : 

    #-i : ignorer les majuscules;
    #-n : numéroter les lignes trouvées;
    #-B n° : mettre la ligne précédente;
    #-A n° : mettre la ligne suivante;
# et ">" pour l'insérer dans un fichier sortie :D


N'étant pas satisfait du résultat du fichier texte, nous avons décidé de créer également pour ces fichiers textes des fichiers html en y insérant un titre...

Nous avons du faire un chercher/remplacer pour que les fins de lignes soient balisées en html.

Cette commande s'effectue ainsi :

sed 's/Ancien/Nouveau/g' nomFichierEntrée > nomFichierSortie
 

La prochaine étape dans ce fichier html serait de mettre en avant le mot étudié, ce qui faciliterait la recherche de ce mot ;)

lundi 22 novembre 2010

Encodage

Vous verrez ci dessous l'avancée du traitement des encodages.
Nous avons réussi à différencier les pages déjà encodées en UTF8 et celles qui sont à convertir en UTF8.
Cependant, peu de fichier à convertir l'ont été.
Nous devons améliorer notre script pour que cela convertisse le plus possible de pages aspirées...
A mercredi :D

mardi 16 novembre 2010

script...

Nous rencontrons des problèmes avec l'encodage des pages.
Nous n'arrivons pas à faire fonctionner notre boucle...
En attendant, nous vous mettons ci-dessous notre script avec wget et lynx qui fonctionne :

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

#!/bin/bash
echo "Donnez le nom du répertoire contenant les fichiers des URLs : ";
read REP;
echo "Donnez le nom du fichier html où stocker les tableaux des liens : ";
read tablo;
echo "<html><head><title>tableaux de liens</title></head><body>" > $tablo;
echo "<p align=\"center\"><hr color=\"blue\" width=\"50%\"/></p>" >> $tablo;

for fic in `ls $REP`
{
    echo "<table align=\"center\" border=\"1\"><tr><td colspan=\"4\" align=\"center\" bgcolor=\"black\"><font color=\"white\"><b>Tableau ${fic%.*}</b></font></td></tr>" >> $tablo;
    # Variable i pour compter les URLs
    j=1;
    mkdir ./PAGES-ASPIREES/${fic%.*}
    mkdir ./DUMP-TEXT/${fic%.*}
   
    for nom in `cat $REP/$fic`
    {
        wget -O ./PAGES-ASPIREES/${fic%.*}/$j.html $nom
        lynx -dump -nolist $nom > ./DUMP-TEXT/${fic%.*}/$j.txt


        echo "<tr><td>$j</td><td><a href=\"$nom\">$nom</a></td><td><a href=\"./PAGES-ASPIREES/${fic%.*}/$j.html\">PAGE ASPIREE</a></td><td><a href=\"./DUMP-TEXT/${fic%.*}/$j.txt\">PAGE DUMP</a></td></tr>" >> $tablo;
        let "j+=1" ;
    }
    echo "</table>" >> $tablo;
    echo "<p align=\"center\"><hr color=\"blue\" width=\"50%\"/></p>" >> $tablo;
}
echo "</body></html>" >> $tablo;

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

mardi 9 novembre 2010

Aperçu du fichier html contenant les tableaux de résultats


Aspiration sur machine et conversion en texte brut des urls

Nous avons modifié notre script afin de récupérer les pages internet sur notre machine, avec la commande wget.
wget -O ./ PAGES-ASPIREES / ${fic%.*} / $j.html $nom


Ensuite, avec la commande lynx, nous récupérons le texte brut de chaque page.    
lynx -dump $nom > ./ DUMP-TEXT / ${fic%.*} / $j.txt


Les résultats sont stockés dans des répertoires aux noms de leurs fichiers d'urls respectifs.    
echo "<tr><td><a href=\"$nom\">$nom</a></td><td><a href=\"../PAGES-ASPIREES/${fic%.*}/$j.html\">PAGE ASPIREE</a></td><td><a href=\"../DUMP-TEXT/${fic%.*}/$j.txt\">PAGE DUMP</a></td></tr>" >> $tablo;

traiter plusieurs fichiers d'URLs

Nous avons modifié notre script pour traiter plusieurs fichiers d'ulrs en même temps. Cela permet de ne lancer le srcipt qu'une seule fois pour toutes les langues et tous les sens.

Le programme demande d'abord dans quel répertoire se trouve les fichiers d'urls
echo "Donnez le nom du répertoire contenant les fichiers des URLs : " ;
read REP ;

Ensuite, il traite en boucle chaque url de chaque fichier
for fic in `ls $REP`
{
    for nom in `cat $REP/$fic`
    {
      }
 }

Il met  les résultats dans un unique fichier html constitué de plusieurs tableaux.
echo "<table align=\"center\" border=\"1\"><tr><td colspan=\"3\" align=\"center\" bgcolor=\"black\"><font color=\"white\"><b>Tableau ${fic%.*}</b></font></td></tr>" >> $tablo; 


Pour organiser et éviter tout écrasement de données, nous procédons à la création de répertoires en réutilisant les noms des fichiers d'urls pour stocker les résultats.
mkdir ./ PAGES-ASPIREES / ${fic%.*}
mkdir ./ DUMP-TEXT / ${fic%.*}