mardi 15 novembre 2011

Séance #4 - applications


Lors du cours du 9 novembre, nous avons appris de nouveaux outils tels que wget ou curl qui vont nous permettre de passer à une étape supérieure de notre projet: l'aspiration de pages web.
Notre but est maintenant d'écrire un script qui exécute plusieurs tâches:
1- Aspirer les pages web correspondant aux urls que nous avons trouvées
2- Ranger les pages aspirées dans des répertoires correspondant à chaque langue, sous le répertoire "PAGES-APSIREES", dans l'arborescence de travail.
3- Constituer une page html qui présente un tableau par langue, contenant des colonnes qui correspondent respectivement au numéro de l'url pour la première colonne, au nom de l'url avec un lien vers la page web correspondante pour la seconde, au lien vers la page aspirée de cette url pour la troisième, puis au retour de la commande curl (0 si opération réussie, un autre chiffre si opération échouée) pour la dernière.

N'ayant pas de résultat pour la commande wget sur mac, (lorsque j'effectue la commande  "man wget" sur  le terminal, j'obtiens la réponse "No manual entry for wget"), nous avons rédigé le script avec la commande curl pour aspirer les pages web correspondant aux urls que nous avons trouvées pour notre projet autour du mot "rêve".
Voici le résultat dans l'arborescence de travail:

Voyons maintenant les résultats dans la page html générée par le script (sachant que les 3 tableaux apparaissaient bel et bien sur une même page html, mais que nous avons séparés pour plus de clarté).




Nous observons que les trois* tableaux ont bien été générés et présentent bien, en troisième colonne, le lien vers la page aspirée des urls, ainsi que leur résultat noté "0", en quatrième colonne indiquant que tout -ou presque!- s'est bien déroulé.
Si l'on observe cette ligne de résultat dans notre tableau html: 

Nous constatons, pour l'URL 49 que curl a détecté une erreur de type 56. Si l'on regarde dans le manuel d'erreur http://curl.haxx.se/docs/manpage.html, on trouve cette explication: Failure in receiving network data, décrivant un problème qui a eu lieu lors de l'envoi des données entre le serveur du site et notre machine. Il semblerait que ce problème ne soit pas de notre ressort, alors la meilleure solution que nous avons trouvée est... de changer d'url!

*en attendant les urls en coréen, si Ilaine s'en sort...!

1 commentaire: