Accéder au contenu principal

Script Fonctionnel

 

C’est avec grande joie que nous postons cette entrée, en effet on arrive à avoir un script fonctionnel

qui répond à la plupart des soucis qu’on a trouvés tout au long de notre projet. 


On dit de la joie,  parce que pour nous trois, n’ayant pas de fortes bases informatiques, arriver à 

comprendre comment ce script fonctionne et pouvoir y ajouter ou supprimer des choses a demandé des

heures et des heures de réflexion, on se réjouit donc d’arriver à ce stade du projet.

 

Si jamais les personnes des promotions à venir lisent cette entrée, il est important de donner un message 

qui rassure. Ce Master est formidable, on apprend énormément de choses.  Cependant on est vite 

confrontés à beaucoup de nouvelles informations. Vous allez vivre une montagne russe d’émotions : 

de l' incompréhension au désespoir, la tristesse puis la fierté. Ne désespérez pas s’il y a des moments de 

détresse, avec de la détermination et en y consacrant du temps vous allez parvenir à comprendre et à faire 

tout ce qui est demandé. Voyez ! on y est presque ! 


Dans cette entrée nous allons montrer le script que nous avons travaillé tout au long du semestre pour notre projet 

  


Dans cette première partie nous établissons les fonctions pour les dossiers des URL, pour créer le tableau et pour reconnaître notre motif. 


Le premier traitement correspond au fichier URL, pour chaque fichier nous créons un tableau pour les URL’s


Voici quelques captures d’écran des tableaux en espagnol et en français.





Dans cette boucle while on traite nos URL, on met chacune sur  une ligne et à l’aide de la commande curl on vérifie la valeur http_code.




Ensuite, si l'encodage de l’URL est de l’UTF-8 on fait les traitements pour l’obtention de notre corpus.

 


1-  On aspire les contenus de nos URL avec la commande Lynx et on les garde dans notre répertoire PAGES ASPIRÉES en format html, et dans le répertoire DUMP-TEXT.

2-  On compte les motifs. 

3- Dans cette partie on extrait les contextes réduits au motif. Pour cela nous allons utiliser le programme minigrep. (voir l'entrée minigrep pour plus de précisions)

4- On créer les index hiérarchique de chaque DUMP. (pour plus d’infos concernant la création des index consultez les entrées précédentes.)

5- Calcul de bigrammes ( pour plus d’infos concernant la création des bigrammes, trigrammes, fourgrammes...etc,  consultez les entrées précédentes


Dans un premier temps, on pensait que le script pourrait s'arrêter ici. Quand on le lançait dans le terminal, 

il fonctionnait  bien et toutes les informations étaient aspirées. Cependant, on s’est vite aperçu qu’il y avait certaines URL qui n'étaient pas encodées en UTF-8 et par conséquent des mauvais rendus 

s’affichaient sur notre tableau et sur nos fichiers DUMP.


Pour remédier à cela, un autre traitement a été intégré : 



Si l’encodage identifié par l’option curl n’est pas UTF-8 on va le convertir en utilisant l’option bash iconv. 


Cette option est très utile, pour l’utiliser sur un fichier vous tapez : 

 iconv -f  [fichier1] -t [fichier2]  (f=from t= to) iconv -l pour afficher la liste d’encodages disponibles


Ensuite, on fait les 5 traitements évoqués précédemment. 


C’est fini ? pas encore. Il se peut que, même en ayant utilisé l’option curl et modifié avec  iconv, il y ait 

encore de sites avec des encodages non reconnus. Une autre option s’avère donc efficace pour y remédier :  Perl.


Pour que ce traitement intégré au script fonctionne, il est nécessaire de télécharger le programme detect 

encoding et de le placer dans le répertoire PROGRAMMES.


Avec cette partie de script on pourra identifier l’encodage de l’URL et faire le traitement correspondant 

avec iconv. 


Quelques précisions seront ajoutées concernant le script utilisé pour traiter les URL en japonais. 

Commentaires

Posts les plus consultés de ce blog

Session 4: un french, un beso, french kissing...

Un beso con lengua, Frencher! Dans cette partie, il sera montré quelques résultats par pair de langue Nous allons commencer par présenter nos recherches en espagnol, et en français. Petite remarque avant de continuer plus loin : en espagnol, le terme "French Kiss" se traduit en espagnol par "Beso con lengua". Il sera donc ici détaillé la façon dont on a procédé pour "Beso con lengua": La première commande est pour trouver les URLs en espagnol du mot "beso con lengua" ou son autre version aussi trouvé : "beso francés". Pour le cas de "beso con lengua" Commande :  counter=0; while [ $counter -le 300 ]; do lynx -dump "https://www.google.com/search?q=suburbs&client=ubuntu&channel=fs&biw=1494&bih=657&sxsrf=ALeKk011piWSj9r1StcMMmaC2Fwkb8FqNg:1603092362766&ei=ij-NX7-dLquJjLsPzLqSsAw&start=$counter&sa=N&ved=2ahUKEwi_isy2kMDsAhWrBGMBHUydBMY4FBDy0wN6BAgWEDM">> mes_liens_bruts.txt; coun

Souci d'encodage MacOs - Lynx

Soucis encodage MacOs - Lynx  Nous faisons cette entrée pour laisser évidence d’un souci d'encodage qu’on a rencontré concernant la  commande lynx sur MacOs. En effet, nous avons remarqué dans certaines URLs aspirées qu' il y avait des rendus bizarres. Notamment pour les caractères diacrités et la c cédille (ç). Ci-dessous quelques  captures d'écran pour illustrer cette situation.      Au début, nous croyions à un souci d’encodage des URL. Nous avons donc bien ajouté dans notre script les deux boucles pour convertir les encodages reconnus avec la commande curl et detect encoding sans pour autant avoir une amélioration dans les rendus de nos pages aspirées.  Normalement, en lançant ce script, si le site n’est pas encodé en UTF-8 une erreur devrait s'afficher dans  le tableau qu’il génère au niveau de la colonne 1, mais aucune erreur ne s’affiche, au contraire il indique  que le site est bien encodé en  UTF-8.  Une vérification manuelle du charset a été effectuée sur cert

Concaténation et nettoyage du corpus.

Concaténation et nettoyage du corpus.    Cette partie de concaténation et nettoyage de corpus est clé car elle va alléger notre corpus pour pouvoir l’analyser sur Itrameur.    Pour ceux qui travaillent sur Windows, un programme pour concaténer est disponible sur icampus.  Il suffit de télécharger  le Fichier + le programme concat et de les placer dans le même dossier.  Double click  pour le lancer et cela concatène les fichiers existants dans ce répertoire.     Si ce n’est pas Windows, comment faire? Sachant qu’il faut introduire une valise au début et à la fin  de chaque fichier DUMP txt et CONTEXTES txt, nous avons appris en cours cette commande.  for file in `ls utf8_1* | tr ' ' '\n' | less`; do echo "<partie=$file>" >> CORPUS_FR.txt ; cat $file >> CORPUS_FR.txt ; echo "</partie>" >> CORPUS_FR.txt ; done En utilisant cette commande la concentration se fait facilement. Pensez à vous placer dans le  répertoire DUMP avan