samedi 19 novembre 2011

Problème avec la commande curl

J'ai testé mon script avec curl sur mon ordinateur et je rencontre plusieurs problèmes.

Tout d'abord les pages aspirées ne fonctionnent que une fois sur deux. Sur six liens, je ne peux en visionner que trois. J'ai remarqué que la raison de ce problème venait du fait que certaines pages aspirées se terminent par l'extension .html et les autres n'affichent pas d'extensions.


J'ai ensuite vérifié les fichiers des liens et je vois que les liens n'affichant pas d'extension html, sont les liens qui se terminent également sans extension. Le nom que prends la page aspirée est donc la dernière partie du lien après le dernier slash.
Le tableau des liens affiche des erreurs, même pour les pages que j'ai réussi à aspirer :

Ma fenêtre de commande affiche aussi le message suivant entre chaque lien traité:
curl: (6) Could not resolve host: .; nodename nor servname provided, or not known

D'autre part, comme on peut le voir sur la première image, je n'arrive pas à ranger les pages aspirées dans leur dossier correspondant. J'ai essayé de changer le chemin après le mkdir dans la première boucle mais je n'y arrive toujours pas.
De plus j'ai regardé les scripts postés sur différents blogs (comme sur celui-ci), et j'ai vu que pour la commande curl l'argument '$nom' est placé à la fin de la commande. Pour ma part, si je la note à la fin de la commande, les pages ne sont pas aspirées sur l'ordinateur mais défilent sur la fenêtre de mon terminal.

Comment faire pour résoudre ces problèmes?

2 commentaires:

  1. Petites remarques :
    - je ne comprends pas pourquoi vous écrivez la commande "cd ../Pages-Aspirees" dans votre script, ça pose des pbs ensuite. Si vous devez y créer des répertoires il suffit de le faire directement "mkdir ../Pages-Aspirees/Langue_$i
    - pour curl, la syntaxe est à vérifier dans la page man de cette commande : l'option -o permet de stocker la page dans un fichier (-o : o en minuscule et suivi du nom du fichier dans lequel on sauvegarde l'url visée)
    - vous pouvez aussi m'envoyer votre fichier d'url afin que je regarde de plus près...
    SF

    RépondreSupprimer
  2. J'ai changé mon script comme vous l'avez indiqué (j'écrivais un zéro à la place d'un o minuscule).
    J'ai maintenant le message d'erreur 23 qui s'affiche (curl: (23) Failed writing body (0 != 1301)) et plus aucune page ne se télécharge dans mes fichiers.
    Je n'ai pas trouvé sur internet comment réparer le problème (la plupart des sites répertoriant les messages d'erreurs possibles sans donner de solutions pour y remédier.)

    RépondreSupprimer