Cette notion de transcodage de fichier est très important lors de constitution de notre tableau et de notre script. Pour simplifier les choses, elle permet de trouver des solutions pour les fichiers n'étant pas en "UTF-8" ou pour les fichiers dont on ne connait pas leurs encodages.
La méthode consiste à dire que dans le cas où on l'encodage attendu n'est pas de l"UTF-8", on ne DUMP pas l'URL. Dans ce cas-là que faire ? Il y a deux possibilités ;
- Si l'on obtient l'encode renvoyé par la commande "curl" est une chaîne vide. Il va falloir extraire l'encodage avec d' autres commandes : egrep (......) et file (.........)
- Si l'on obtient l'encode renvoyé par la commande "curl" est une chaîne non vide, c'est-à-dire que l'encodage n'est pas de l'"UTF-8". Dans ce cas de figure, il va falloir savoir si l'encodage est connu de la commande "iconv". Pour cela, il suffit de taper "iconv -l".
Si, effectivement, l'encodage est connu de la commande "iconv", on fait le dump puis la conversion. Le cas échéant, il va falloir suivre suivre la même procédure que pour les chaînes vides.
Comment faire pour convertir l'encodage avec iconv ?
Bonne question !
"iconv" est une commande prenant deux arguments, un pour l'encodage de départ (-f pour "from") et (-t pour "to").
Une autre commande faisant partie du script est lynx. Cette commande vu en cours peut, parfois, poser problème avec les encodages autres que "UTF-8". Pour pallier ce problème, il y a deux solutions, plutôt deux options propre à lynx;
- "assume-charset", cette option nous donne l’encodage de la page.
- "display-charset", cette option encode à nouveau.
Cette commandes sont d'une grande utilité dans l'avancement du script.
Comments