#!/usr/bin/bash
#1er argument - les fichiers URLS
#2ème argument - le fichier du tableau
#_______________________________
#Création du fichier html
echo "" > $2 ;
echo "
" >> $2 ;
echo "N° | CodeHttp | URL | Page Aspirée | Encodage | Dump-Text | Contexte | Contexte HTML | Fq Motif | Index | Bigramme |
" >> $2 ;
compteur=1;
for ligne in $(cat $1/$fichier)
do
code_sortie=$(curl -s -L -o tmp.txt -w "%{http_code}" $ligne | tail -1) ;
if [[ $code_sortie == 200 ]]
then
# recherche de l'encodage du l'URL sur le site
ENCODAGE=$(curl -sIL "$ligne" | egrep -i "charset" | cut -f2 -d"=" | tr "[a-z]" "[A-Z]" | tr -d "\n" | tr -d "\r") ;
echo -e "$compteurtableau::$compteur::$code_sortie::$ENCODAGE::$ligne\n";
if [[ $ENCODAGE == "UTF-8" ]]
then
echo -e "Encodage trouvé en ligne est UTF-8";
# Création de page aspirée
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
# DUMP-TEXT
lynx -dump -nolist $ligne > ./DUMP-TEXT/$compteurtableau-$compteur.txt ;
# Contexte
egrep -i "$3" ./DUMP-TEXT/$compteurtableau-$compteur.txt > ./CONTEXTES/$compteurtableau-$compteur.txt;
# Fq motif
fqmotif=$(egrep -coi "$3" ./DUMP-TEXT/$compteurtableau-$compteur.txt);
# Contexte html
perl5.16.3.exe ./MINIGREP/minigrepmultilingue.pl "UTF-8" ./DUMP-TEXT/$compteurtableau-$compteur.txt ./PROGRAMMES/parametre-motif.txt ;
mv resultat-extraction.html ./CONTEXTES/$compteurtableau-$compteur.html ;
# Index
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/index-$compteurtableau-$compteur.txt ;
# Bigrammes
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur.txt > bi1.txt;
tail -n +2 bi1.txt > bi2.txt ;
paste bi1.txt bi2.txt > bi3.txt ;
cat bi3.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/bigramme-$compteurtableau-$compteur.txt ;
echo "$compteur | $code_sortie | $ligne | Page aspirée n° $compteur | $ENCODAGE | DUMP-TEXT n° $compteur | Contexte n° $compteurtableau-$compteur | Contexte HTML n° $compteurtableau-$compteur | $fqmotif | Index n° $compteurtableau-$compteur | Bigramme n° $compteurtableau-$compteur |
" >> $2 ;
else
echo -e "Encodage récupéré n'est pas UTF-8" ;
echo -e "ENCODAGE initial : <$ENCODAGE> \n";
#recherche de l'encodage sur la page aspirée
if [[ $ENCODAGE == "" ]]
then
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
ENCODAGEFILE=$(file -i ./PAGES-ASPIREES/$compteurtableau-$compteur.html | cut -d"=" -f2 | tr "[a-z]" "[A-Z]");
echo -e "ENCODAGE trouvé en ligne est vide. ENCODAGE extrait sur la page aspirée : $ENCODAGEFILE \n";
#traitement du fichier si l'encodage récupéré sur la page aspirée UTF-8
if [[ $ENCODAGEFILE == "UTF-8" ]]
then
echo -e "Encodage trouvé sur la page aspirée est UTF-8";
# Création de page aspirée
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
# DUMP-TEXT
lynx -dump -nolist $ligne > ./DUMP-TEXT/$compteurtableau-$compteur.txt ;
# Contexte
egrep -i "$3" ./DUMP-TEXT/$compteurtableau-$compteur.txt > ./CONTEXTES/$compteurtableau-$compteur.txt;
# Fq motif
frmotif=$(egrep -coi "$3" ./DUMP-TEXT/$compteurtableau-$compteur.txt);
# Contexte html
perl5.16.3.exe ./MINIGREP/minigrepmultilingue.pl "UTF-8" ./DUMP-TEXT/$compteurtableau-$compteur.txt ./PROGRAMMES/parametre-motif.txt ;
mv resultat-extraction.html ./CONTEXTES/$compteurtableau-$compteur.html ;
# Index
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/index-$compteurtableau-$compteur.txt ;
# Bigrammes
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur.txt > bi1.txt;
tail -n +2 bi1.txt > bi2.txt ;
paste bi1.txt bi2.txt > bi3.txt ;
cat bi3.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/bigramme-$compteurtableau-$compteur.txt ;
echo "$compteur | $code_sortie | $ligne | Page aspirée n° $compteur | $ENCODAGEFILE | DUMP-TEXT n° $compteur | Contexte n° $compteurtableau-$compteur | Contexte HTML n° $compteurtableau-$compteur | $frmotif | Index n° $compteurtableau-$compteur | Bigramme n° $compteurtableau-$compteur |
" >> $2 ;
else
#la conversion de l'encodage trouvé sur la page aspirée si il n'est pas UTF-8
echo -e "Encodage récupéré sur la page aspirée n'est pas UTF-8" ;
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
# DUMP-TEXT
lynx --assume-charset="$ENCODAGEFILE" --display-charset="$ENCODAGEFILE" -dump -nolist $ligne > ./DUMP-TEXT/$compteurtableau-$compteur.txt ;
iconv -f $ENCODAGEFILE -t "UTF-8" ./DUMP-TEXT/$compteurtableau-$compteur.txt > ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt ;
egrep -i "$3" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt > ./CONTEXTES/$compteurtableau-$compteur.txt;
# Fq motif
frmotif=$(egrep -coi "$3" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt);
# Contexte html
perl5.16.3.exe ./MINIGREP/minigrepmultilingue.pl "UTF-8" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt ./PROGRAMMES/parametre-motif.txt ;
mv resultat-extraction.html ./CONTEXTES/$compteurtableau-$compteur.html ;
# Index
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/index-$compteurtableau-$compteur.txt ;
# Bigrammes
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt > bi1.txt;
tail -n +2 bi1.txt > bi2.txt ;
paste bi1.txt bi2.txt > bi3.txt ;
cat bi3.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/bigramme-$compteurtableau-$compteur.txt ;
echo "$compteur | $code_sortie | $ligne | Page aspirée n° $compteur | $ENCODAGEFILE | DUMP-TEXT n° $compteur | Contexte n° $compteurtableau-$compteur | Contexte HTML n° $compteurtableau-$compteur | $frmotif | Index n° $compteurtableau-$compteur | Bigramme n° $compteurtableau-$compteur |
" >> $2 ;
fi
else
#la conversion de l'encodage trouvé par curl
reponse=$(iconv -l | egrep "$ENCODAGE") ;
if [[ $reponse != "" ]]
then
echo -e "Encodage récupéré en ligne est <$ENCODAGE>";
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
# DUMP-TEXT
lynx --assume-charset="$ENCODAGE" --display-charset="$ENCODAGE" -dump -nolist $ligne > ./DUMP-TEXT/$compteurtableau-$compteur.txt ;
iconv -f $ENCODAGE -t "UTF-8" ./DUMP-TEXT/$compteurtableau-$compteur.txt > ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt ;
# Contexte
egrep -i "$3" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt > ./CONTEXTES/$compteurtableau-$compteur.txt;
# Fq motif
frmotif=$(egrep -coi "$3" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt);
# Contexte html
perl5.16.3.exe ./MINIGREP/minigrepmultilingue.pl "utf-8" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt ./PROGRAMMES/parametre-motif.txt ;
mv resultat-extraction.html ./CONTEXTES/$compteurtableau-$compteur.html ;
# Index
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/index-$compteurtableau-$compteur.txt ;
# Bigrammes
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur-utf8.txt > bi1.txt;
tail -n +2 bi1.txt > bi2.txt ;
paste bi1.txt bi2.txt > bi3.txt ;
cat bi3.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/bigramme-$compteurtableau-$compteur.txt ;
echo "$compteur | $code_sortie | $ligne | Page aspirée n° $compteur | $ENCODAGE | DUMP-TEXT n° $compteur | Contexte n° $compteurtableau-$compteur | Contexte HTML n° $compteurtableau-$compteur | $frmotif | Index n° $compteurtableau-$compteur | Bigramme n° $compteurtableau-$compteur |
" >> $2 ;
else
#on essaie de récupérer l'encodage en ligne avec file
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
ENCODAGEdeux=$(file -i ./PAGES-ASPIREES/$compteurtableau-$compteur.html | cut -d"=" -f2 | tr "[a-z]" "[A-Z]");
# Création de page aspirée
curl -sL -o ./PAGES-ASPIREES/$compteurtableau-$compteur.html $ligne ;
# DUMP-TEXT
lynx -dump -nolist $ligne > ./DUMP-TEXT/$compteurtableau-$compteur.txt ;
# Contexte
egrep -i "$3" ./DUMP-TEXT/$compteurtableau-$compteur.txt > ./CONTEXTES/$compteurtableau-$compteur.txt;
# Fq motif
frmotif=$(egrep -coi "$3" ./DUMP-TEXT/$compteurtableau-$compteur.txt);
# Contexte html
perl5.16.3.exe ./MINIGREP/minigrepmultilingue.pl "utf-8" ./DUMP-TEXT/$compteurtableau-$compteur.txt ./PROGRAMMES/parametre-motif.txt ;
mv resultat-extraction.html ./CONTEXTES/$compteurtableau-$compteur.html ;
# Index
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/index-$compteurtableau-$compteur.txt ;
# Bigrammes
egrep -o "\w+" ./DUMP-TEXT/$compteurtableau-$compteur.txt > bi1.txt;
tail -n +2 bi1.txt > bi2.txt ;
paste bi1.txt bi2.txt > bi3.txt ;
cat bi3.txt | sort | uniq -c | sort -r > ./DUMP-TEXT/bigramme-$compteurtableau-$compteur.txt ;
echo "$compteur | $code_sortie | $ligne | Page aspirée n° $compteur | $ENCODAGEdeux | DUMP-TEXT n° $compteur | Contexte n° $compteurtableau-$compteur | Contexte HTML $compteurtableau-$compteur | $frmotif | Index n° $compteurtableau-$compteur | Bigramme n° $compteurtableau-$compteur |
" >> $2 ;
fi
fi
fi
else
#on a pas réussi à trouver l'encodage
echo -e "PB....$compteurtableau::$compteur::$code_sortie::::$ligne\n";
echo "$compteur | $code_sortie | $ligne | - | - | - | - | - | - | - | - | - |
" >> $2 ;
fi
compteur=$((compteur + 1));
echo -e "_____________________________________________________________________\n";
done;
echo "
" >> $2 ;
echo "