Ça y est. Le projet est fini.
Le compte rendu final peut être consulté aux adresses suivantes :
http://pierre.inalco.free.fr/shizen/index.html
http://tal.univ-paris3.fr/plurital/travaux-2007-2008/...
A bientôt, pour de nouvelles aventures!
jeudi 10 janvier 2008
lundi 17 décembre 2007
script.sh: amélioration
A partir des noms des fichiers d'URL, le script crée différents répertoires et y enregistre les pages aspirées, les dumps, les contextes.
Seulement voilà : ces noms de fichiers sont utilisés tels quels, avec leurs extensions, et nous nous retrouvons avec des répertoires "quelque_chose.txt" dans notre arborescence.
Pour remédier à ce problème, nous allons utiliser la commande basename avec la syntaxe suivante:
Nous allons ensuite utiliser la chaine de caractères stockée dans la variable $fic2 pour nommer nos répertoires:
Seulement voilà : ces noms de fichiers sont utilisés tels quels, avec leurs extensions, et nous nous retrouvons avec des répertoires "quelque_chose.txt" dans notre arborescence.
Pour remédier à ce problème, nous allons utiliser la commande basename avec la syntaxe suivante:
fic2=$(basename $fic .txt)
Nous allons ensuite utiliser la chaine de caractères stockée dans la variable $fic2 pour nommer nos répertoires:
mkdir ./pg_aspirees/$fic2
vendredi 30 novembre 2007
minigrepmultilingue 1.0
La dernière étape de notre projet (avant la mise en forme finale) consiste à extraire de nos fichiers dump, un motif et son contexte. Pour un texte en français ou en anglais la commande egrep aurait suffit, mais pour du japonais et du chinois, il nous fallait un équivalent supportant Unicode.
Nous nous sommes donc tournés vers minigrepmultilingue 1.0, parfait pour ce que nous avons à faire.
Télécharger et décompresser minigrepmultilingue.zip (c'est l'archive contenant le script et le module Unicode-String-2.09) dans un répertoire que nous appellerons "minigrepmultilingue".
Démarrer le gestionnaire de paquets de Cygwin (setup) et vérifier que make et gcc sont bien installés (ils se trouvent dans la catégorie Devel).
Sous Cygwin, se placer dans le repertoire "minigrepmultilingue" et décompresser le module Unicode-String-2.09 :
tar xzf Unicode-String-2.09.tar.gz
aller dans le dossier du module Unicode-String-2.09 et lancer le script Makefile.PL :
lancer la commande make
et enfin make test
pour l'installation, rien de très compliqué, il suffit juste de taper: make install
Pour s'assurer que tout s'est passé correctement, rien de tel qu'un petit test. Selon l'exemple fourni avec le script nous allons chercher le motif основных dans le fichier RU_Convention_UTF8.txt :
perl mini-grep-multilingue.pl "UTF-8" RU_Convention_UTF8.txt motif.txt
En sortie nous avons un fichier html, ca marche!
Pour plus d'informations: http://www.cavi.univ-paris3.fr/ilpga/ilpga/...
Nous nous sommes donc tournés vers minigrepmultilingue 1.0, parfait pour ce que nous avons à faire.
i. préparation
Télécharger et décompresser minigrepmultilingue.zip (c'est l'archive contenant le script et le module Unicode-String-2.09) dans un répertoire que nous appellerons "minigrepmultilingue".
Démarrer le gestionnaire de paquets de Cygwin (setup) et vérifier que make et gcc sont bien installés (ils se trouvent dans la catégorie Devel).
Sous Cygwin, se placer dans le repertoire "minigrepmultilingue" et décompresser le module Unicode-String-2.09 :
tar xzf Unicode-String-2.09.tar.gz
ii. compilation
aller dans le dossier du module Unicode-String-2.09 et lancer le script Makefile.PL :
lancer la commande make
et enfin make test
iii. installation
pour l'installation, rien de très compliqué, il suffit juste de taper: make install
iv. test
Pour s'assurer que tout s'est passé correctement, rien de tel qu'un petit test. Selon l'exemple fourni avec le script nous allons chercher le motif основных dans le fichier RU_Convention_UTF8.txt :
perl mini-grep-multilingue.pl "UTF-8" RU_Convention_UTF8.txt motif.txt
En sortie nous avons un fichier html, ca marche!
Pour plus d'informations: http://www.cavi.univ-paris3.fr/ilpga/ilpga/...
lynx -dump
Une fois nos pages aspirées avec wget, nous devons en extraire le texte.
Pour ce faire nous allons utiliser l'option dump de lynx
La syntaxe est la suivante:
w3m, un autre navigateur internet en mode texte, permet de faire la même opération. Mais attention! w3m gérant les frames il arrive que le fichier dump en sortie soit incompréhensible (des morceaux de textes de différentes parties de la page pouvant être mélangés).
Pour ce faire nous allons utiliser l'option dump de lynx
La syntaxe est la suivante:
lynx -dump [URL] > [dump].txt
w3m, un autre navigateur internet en mode texte, permet de faire la même opération. Mais attention! w3m gérant les frames il arrive que le fichier dump en sortie soit incompréhensible (des morceaux de textes de différentes parties de la page pouvant être mélangés).
vendredi 16 novembre 2007
%0D?
Mettre wget dans un script BASh devait permettre d'automatiser la tâche d'aspiration de mes pages. J'ai écrit un script qui parcourt chaque ligne (donc adresse) du fichier d'URL, extrait chacune des pages à l'aide de wget et, dans un tableau nouvellement créé, donne un lien vers la page online et un autre vers la page aspirée.
Tout allait pour le mieux dans le meilleur des mondes jusqu'à ce que je me rende compte que script.sh (c'est son petit nom) ne faisait pas ce que je lui avais demandé:
Que se passe t-il? J'ai beau vérifier mon script encore et encore, le réécrire de A à Z, essayer avec différents fichiers d'URL... wget n'arrive pas à trouver les pages que je lui demande d'aspirer.
Mais alors que je regarde ma fenêtre Cygwin d'un peu plus près, je remarque que les URL qui apparaissent dans mon script se terminent toutes par %0D... %0D! Ce serait pas un caractère de contrôle ça? Comme celui qui permet de faire un retour chariot? Je vérifie à nouveau le fichier texte contenant mes URL: comme je m'en doutais, %0D n'apparait nul part.
Tout devient clair! Les retours à la ligne de mes fichiers textes (tapés sous Windows XP) sont interprétés différemment par Cygwin (qui émule un système UNIX). Notepad++, entre autres, permet de régler ce problème en un seul click:
Je peux maintenant relancer mon script et constater avec satisfaction que le problème est résolu:
Tout allait pour le mieux dans le meilleur des mondes jusqu'à ce que je me rende compte que script.sh (c'est son petit nom) ne faisait pas ce que je lui avais demandé:
Que se passe t-il? J'ai beau vérifier mon script encore et encore, le réécrire de A à Z, essayer avec différents fichiers d'URL... wget n'arrive pas à trouver les pages que je lui demande d'aspirer.
Mais alors que je regarde ma fenêtre Cygwin d'un peu plus près, je remarque que les URL qui apparaissent dans mon script se terminent toutes par %0D... %0D! Ce serait pas un caractère de contrôle ça? Comme celui qui permet de faire un retour chariot? Je vérifie à nouveau le fichier texte contenant mes URL: comme je m'en doutais, %0D n'apparait nul part.
Tout devient clair! Les retours à la ligne de mes fichiers textes (tapés sous Windows XP) sont interprétés différemment par Cygwin (qui émule un système UNIX). Notepad++, entre autres, permet de régler ce problème en un seul click:
Je peux maintenant relancer mon script et constater avec satisfaction que le problème est résolu:
mercredi 14 novembre 2007
自然 pour exprimer la spontanéité
URL_25: http://golf.nikkei.co.jp/...
URL_26: http://sweetacorn.blog108.fc2.com/...
URL_27: http://contents.innolife.net/...
URL_28: http://www.city.takashima.shiga.jp/...
Fichier texte contenant les URL: 05_spontaneite.txt
Pages aspirées avec wget: <05_spontaneite>
URL_26: http://sweetacorn.blog108.fc2.com/...
URL_27: http://contents.innolife.net/...
URL_28: http://www.city.takashima.shiga.jp/...
Fichier texte contenant les URL: 05_spontaneite.txt
Pages aspirées avec wget: <05_spontaneite>
自然 pour exprimer un enchaînement logique
URL_21: http://www.orsj.or.jp/~wiki/...
URL_22: http://blog.livedoor.jp/...
URL_23: http://bizplus.nikkei.co.jp/...
URL_24: http://www.toonippo.co.jp/news_kyo/...
Fichier texte contenant les URL: 04_enchainement_logique.txt
Pages aspirées avec wget: <04_enchainement_logique>
URL_22: http://blog.livedoor.jp/...
URL_23: http://bizplus.nikkei.co.jp/...
URL_24: http://www.toonippo.co.jp/news_kyo/...
Fichier texte contenant les URL: 04_enchainement_logique.txt
Pages aspirées avec wget: <04_enchainement_logique>
Inscription à :
Articles (Atom)