PDA

Afficher la version complète : Wget



Copernicus_ThebigNewbie
28/05/2005, 11h39
Je me suis un peu amusé avec la commande wget... qui est extremement puissante....

Donc j'ai fais un wget -i <fichier> où j'avais mis une liste d'url ... hyperpuissant bref

y a t'il moyen d'incrementer directement un url ?
Exemple :
http*://www.azerty.com/index/page1/28052005
http*://www.azerty.com/index/page2/28052005
http*://www.azerty.com/index/page1/31052005


style : wget http*://www.azerty.com/index/page[P]/[JJ][MM]2005

où l'on ne ferait varié que P JJ et MM ?

on remarquera qu'il n'y a que la date et le numero de page qui change....

ou est-on obliger de passer par le fichier ?

Je continue a cogiter .. c'est mes tout début en shell bash

Bon avec un ((var++)) on incremente et un ((var--)) on décremente
et avec read (+/- le input en basic .. )

black_code
28/05/2005, 14h37
a ma connaissance les options de get ne te donne pas la possibilité de faire

<div class='quotetop'>Citation </div>
style : wget http*://www.azerty.com/index/page[P]/[JJ][MM]2005[/b]

mais par contre tu peut tout à fait faire un script shell dans lequel tu fera varier tes

P JJ MM, c'est tout a fait possible avec cette methode


sinon tu peut aussi utiliser l'option


--page-requisites

de wget, Cette option oblige Wget a telecharger tous les fichiers nécessaires a

l'affichage convenable d'une page HTML donnée. Notamment les images, sons et

feuilles de styles références.

par exemple :


wget -r -l 0 -p http://<site>/1.html

donc si 1.html comporte 1.gif 2.gif... ben tout ce qui necessaire au bon affichage de

1.html sera telecharger aussi

Copernicus_ThebigNewbie
28/05/2005, 17h27
oki ... un grand merci ... je vais continuer a m'amuser

fredblue
28/05/2005, 17h33
Originally posted by black_code@samedi 28 mai 2005 à 13:37
a ma connaissance les options de get ne te donne pas la possibilité de faire

<div class='quotetop'>Citation
style : wget http*://www.azerty.com/index/page[P]/[JJ][MM]2005[/b][/quote]

ben, tu peux utiliser {} pour définir un intervalle si tu connais le nombre de répertoires PageX à récupérer. Un truc comme :
wget http://station3/~fred/test/index/page{1,2,3}/
Pas besoin de script bash pour ça.
fred@ultra30:~/test$ wget http://station3/~fred/test/index/page{1,2,3}/

En revanche pour l'incrémentaton des fichiers, c'est un peu plus complexe car tout dépend comment les nombres sont écrits.
wget http://station3/~fred/test/index/page{1,2,...,28}{05,06}2005 fonctionne mais tous les fichiers récupérés posséderont des noms sous la forme 26052005 27052005.1 28052005.2. Pas vraiment facile pour savoir de quel répertoire provient le fichier 28052005.26.

Perso, j'aime bien les options -m -nH pour récupérer des répertoires entiers.

A plus
Fred

Copernicus_ThebigNewbie
28/05/2005, 17h39
de plus en plus interressant ...

black_code
28/05/2005, 18h22
merci pour les precision fredblue

mais sur l'exemple mis par Copernicus_ThebigNewbie

<div class='quotetop'>Citation </div>
http*://www.azerty.com/index/page1/28052005
http*://www.azerty.com/index/page2/28052005
http*://www.azerty.com/index/page1/31052005


style : wget http*://www.azerty.com/index/page[P]/[JJ][MM]2005[/b]

je dis quand meme qu'un script de 5 lignes le ferras sans problème

<div class='quotetop'>Citation </div>
wget http://station3/~fred/test/index/page{1,2,...,28}{05,06}2005 fonctionne mais tous les fichiers récupérés posséderont des noms sous la forme 26052005 27052005.1 28052005.2. Pas vraiment facile pour savoir de quel répertoire provient le fichier 28052005.26.[/b]

justement avec le petit script cela est possible

sinon si tu connais le nom des pages ben il faut le mettre dans un fichier et le passer

en parametre a wget comme ca c'est sur que ca marche

voila, moi je fait comme ca et ca reste mon avis libre a chacun de choisir la methode

qu'il lui convient

merci fredblue pour les precisions

fredblue
28/05/2005, 23h00
vi ;-)
Tout dépend de la finalité de ce que tu veux faire.
Un script bash est possible, un script perl est possible, utiliser curl ou axel est également un autre choix. Bref, tu as plein de solutions.

Mais je n'ai pas compris le but final de l'opération. Pourquoi s'ennuyer avec des fichiers (que je connaissent leur nom ou pas) alors que je peux récupérer le répertoire entier tout en sauvegardant l'arborescence. Et oui, je suis très feignant ;-)
A chacun sa méthode, le principal est d'arriver au bon résultat. <mode philo>Attention, ça ne veux pas dire que la fin justifie les moyens ;-)</mode philo>

A plus
Fred

black_code
28/05/2005, 23h18
<div class='quotetop'>Citation </div>
Pourquoi s'ennuyer avec des fichiers (que je connaissent leur nom ou pas) alors que je peux récupérer le répertoire entier[/b]

la fredblue a raison

Asimov
06/07/2005, 23h40
Est ce quelqu'un pourrait faire un petit topo sur la facon de copier un site complet avec wget?

C'est le cas de figure le plus courant.....