WGET(1) | GNU Wget | WGET(1) |
NOM¶
wget - Un récupérateur réseau non interactif
SYNOPSIS¶
wget [option]... [URL]...
DESCRIPTION¶
GNU Wget est un programme non interactif de téléchargement de fichiers depuis le Web. C'est un logiciel libre. Il supporte les protocoles HTTP, HTTPS et FTP ainsi que le téléchargement au travers des proxies HTTP.
Wget est non interactif c'est-à-dire qu'il peut travailler en arrière-plan, sans intervention de l'utilisateur. Ceci vous permet de lancer un téléchargement et de vous déconnecter du système, laissant Wget finir le travail. En revanche, la plupart des navigateurs Web requièrent la présence constante de l'utilisateur, ce qui est particulièrement pénible lorsqu'on transfère beaucoup de données.
Wget peut suivre les liens des pages HTML et XHTML et créer une copie locale de sites web distants, en récréant complètement la structure du site original. Ceci est parfois désigné sous le nom de « téléchargement récursif ». En faisant cela, Wget respecte le standard d'exclusion de robots (/robots.txt). Wget peut aussi convertir les liens dans les fichiers HTML téléchargés pour la consultation locale.
Wget a été conçu pour être robuste en dépit des connexions réseaux lentes ou instables : si un téléchargement échoue suite à un problème réseau, il réessayera jusqu'à ce que l'intégralité du fichier soit téléchargée. Si le serveur supporte la reprise, il lui demandera de reprendre là où le téléchargement s'est interrompu.
OPTIONS¶
Options de base pour le démarrage
- -V
- --version
- Affiche la version de Wget.
- -h
- --help
- Affiche un message d'aide décrivant toutes les options de ligne de commande de Wget.
- -b
- --background
- Passe en arrière-plan immédiatement après le démarrage. Si aucun fichier de sortie n'est spécifié via -o, la sortie est redirigée vers wget-log.
- -e commande
- --execute commande
- Exécute commande comme si elle faisait partie de
.wgetrc. La commande sera exécutée
après celles de .wgetrc, et donc prendra le pas sur
celles-ci.
Options de suivi et de fichiers d'entrées
- -o logfile
- --output-file=logfile
- Enregistre tous les messages dans logfile. Normalement les messages sont affichés sur la sortie d'erreur standard.
- -a logfile
- --append-output=logfile
- Ajouter à logfile. C'est la même chose que l'option -o, sauf que les messages sont ajoutés à la fin du fichier logfile au lieu d'écraser l'ancien fichier. Si logfile n'existe pas, il sera créé.
- -d
- --debug
- Active la sortie de débogage, c'est-à-dire des informations importantes pour les développeurs de Wget si quelque chose ne fonctionne pas correctement. Votre administrateur système peut avoir choisi de compiler Wget sans l'option de débogage, dans ce cas -d ne fonctionnera pas. Remarquez que la compilation avec cette option est toujours sûre : Wget compilé avec l'option de débogage n'affichera aucune information de débogage à moins qu'on ne le lui demande avec -d.
- -q
- --quiet
- Désactive la sortie de Wget.
- -v
- --verbose
- Active le mode verbeux, avec toutes les données disponibles. Ce mode est activé par défaut.
- -nv
- --non-verbose
- Sortie non verbeux : désactive le mode verbeux, sans toutefois être complètement muet (utilisez -q pour ça), et donc seuls les messages d'erreurs et les informations de bases seront affichés.
- -i fichier
- --input-file=fichier
- Lit les URL depuis fichier. Dans ce cas, aucune URL n'est requise
sur la ligne de commande. S'il y a des URL sur la ligne de commande et
dans un fichier d'entrée, celles de la ligne de commande sont
téléchargées en premier. fichier n'est pas
nécessairement un document HTML, une simple liste d'URL convient
également.
Cependant, si vous spécifiez --force-html, le document sera considéré comme étant du html. Dans ce cas vous pouvez avoir des problèmes avec les liens relatifs, problème qui se résout en ajoutant <base href="url"> aux documents ou en spécifiant --base=url sur la ligne de commande.
- -F
- --force-html
- Lorsque l'entrée est lue depuis un fichier, force Wget à le considérer comme un fichier HTML. Cela vous permet de rapatrier les liens relatifs depuis un fichier HTML de votre disque local, en ajoutant <base href="url"> au HTML, ou en utilisant l'option de ligne de commande --base.
- -B URL
- --base=URL
- Utilisé en conjonction avec -F, préfixe les liens
relatifs avec URL dans le fichier spécifié par
-i.
Options de téléchargement
- --bind-address=ADRESSE
- Lors de la création de la connexion TCP/IP cliente, utilise ADRESSE sur la machine locale (bind()). ADRESSE peut être un nom d'hôte ou une adresse IP. Cette option peut être utile si votre machine possède plusieurs adresses IP.
- -t n
- --tries=n
- Définit le nombre de tentatives à n. Spécifiez 0 ou inf pour un nombre illimité de tentatives. Par défaut 20 tentatives sont effectuées, à moins qu'une erreur fatale telle que « connexion refusée » ou « non trouvé » (404) apparaisse.
- -O fichier
- --output-document=fichier
- Les documents ne seront pas écrits dans les fichiers appropriés, mais tous concaténés les uns aux autres et écrits dans fichier. Si fichier existe déjà, il sera remplacé. Si fichier vaut -, les documents seront écrits sur la sortie standard. Cette option positionne automatiquement le nombre de tentatives à 1.
- -nc
- --no-clobber
- Si un fichier est téléchargé plus d'une fois dans un
même répertoire, le comportement de Wget dépend de
plusieurs options parmi lesquelles -nc. Dans certains cas, le
fichier local sera remplacé au fur et à mesure des
téléchargements. Dans les autres cas, il sera
préservé.
Quand Wget est lancé sans -N, -nc, ni -r, le téléchargement d'un même fichier dans un même répertoire préservera le fichier original fichier, les copies suivantes seront renommées fichier.1, fichier.2 et ainsi de suite. Si l'option -nc est spécifiée, ce comportement est supprimé, Wget ne téléchargera pas les nouvelles copies de fichier. C'est pourquoi no-clobber n'est pas un nom totalement adapté pour ce mode : ce n'est pas contre l'expulsion du fichier qu'elle protège (les suffixes numériques empêchent déjà le clobbering), mais elle empêche la sauvegarde des version multiples.
Quand Wget est lancé avec -r, mais sans -N ni -nc, le retéléchargement d'un fichier écrasera l'ancienne version de celui-ci. L'option -nc empêche ce comportement : la version originale est préservée et les nouvelles copies du serveur sont ignorées.
Quand Wget est lancé avec -N, indépendamment de -r, la décision de télécharger la nouvelle version du fichier dépend des dates du fichier local et distant et de la taille du fichier. -nc ne devrait pas être spécifié en même temps que -N.
Remarquez que si l'option -nc est spécifiée, les fichiers avec l'extension .html ou (beurk) .htm seront chargés depuis le disque local et analysés comme s'ils avaient été rapatriés depuis le Web.
- -c
- --continue
- Reprend le téléchargement d'un fichier incomplet. C'est
utile pour achever le téléchargement commencé par une
instance précédente de Wget, ou par un autre programme. Par
exemple :
wget -c ftp://sunsite.doc.ic.ac.uk/ls-lR.Z
S'il y a un fichier nommé ls-lR.Z dans le répertoire courant, Wget supposera que c'est la première partie du fichier distant, et demandera au serveur de continuer le téléchargement à l'offset égal à la longueur du fichier local.Remarquez que vous n'avez pas besoin de spécifier cette option si vous voulez que l'invocation courante de Wget réessaye de retélécharger un fichier parce que la connexion a été perdue. C'est le comportement par défaut. -c n'affecte que la reprise des téléchargements démarrés antérieurement à cette invocation de Wget, et dont les fichiers locaux sont encore présents.
Sans l'option -c, l'exemple précédent aurait juste téléchargé le fichier distant dans ls-lR.Z.1, laissant intact le fichier tronqué ls-lR.Z.
Depuis Wget 1.7, si vous utilisez -c sur un fichier non vide, et que le serveur ne supporte pas la reprise du téléchargement, Wget refusera de télécharger le fichier depuis zéro, ce qui détruirait le contenu existant. Si vous voulez vraiment recommencer le téléchargement depuis zéro, effacez le fichier.
Également depuis Wget 1.7, si vous utilisez -c sur un fichier de taille supérieure ou égale à celle du serveur, Wget refusera de télécharger le fichier et affichera un message d'explication car dans ce cas la reprise du téléchargement n'a aucun sens.
En revanche, l'utilisation de -c, sur tout fichier qui est plus grand sur le serveur que localement sera considéré comme un téléchargement incomplet ; les octets manquants seront téléchargés et ajoutés la fin du fichier. C'est vraiment pratique dans certains cas : par exemple vous pouvez utiliser, wget -c pour ne télécharger que la nouvelle portion de données qui ont été ajoutés à un fichier de log.
Toutefois, si le fichier est plus grand du côté du serveur parce qu'il a été modifié, par opposition à un simple ajout, vous vous retrouvez avec un fichier corrompu. Wget n'a aucun moyen de vérifier que le fichier local est réellement un préfixe valide du fichier distant. Vous devez faire attention quand vous utilisez simultanément -c et -r, puisque chaque fichier sera considéré comme un candidat à la reprise d'un téléchargement interrompu.
Autre exemple : vous récupérez un fichier corrompu si vous utilisez -c avec un proxy HTTP boiteux qui insère une chaîne « transfer interrupted » dans le fichier local. Dans le futur, une option retour en arrière pourrait être ajoutée pour s'occuper de ce cas.
Remarquez que -c ne fonctionne qu'avec les serveurs FTP et HTTP qui supportent l'en-tête Range.
- --progress=type=type
- Positionne le type d'indicateur de progression. Les indicateurs valides
sont dot (le point) et bar (une barre).
Par défaut c'est la barre qui est utilisée. C'est une longue barre de progression ASCII pour matérialiser le téléchargement. Si la sortie n'est pas un terminal, les points seront utilisés. Si vous voulez forcer l'indicateur barre, utilisez --progress=bar:force.
--progress=dot permet de sélectionner l'affichage de points. Des points sont imprimés à l'écran pour matérialiser le téléchargement réussi d'une quantité déterminée de données.
Quand vous utilisez les points, vous pouvez aussi positionner le style en spécifiant dot:style. Les différents styles permettent de choisir la signification du point. Dans le style par défaut (default) chaque point représente 1K, il y a 10 points par bloc et 50 points par ligne. Le style binary est orienté ordinateur : 8 K par point, 16 points par bloc et 48 points par ligne (ce qui fait 384 K par ligne). Le style mega est plus adapté pour le téléchargement de très gros fichiers : chaque point représente 64 K il y a 8 points par bloc et 48 points sur chaque ligne (ce qui fait 3 M par ligne).
Remarquez qu'il est possible d'indiquer le style par défaut en utilisant la commande "progress" dans .wgetrc. Cette option a une priorité inférieure à celle de la ligne de commande.
- -N
- --timestamping
- Active l'estampille temporelle.
- -S
- --server-response
- Affiche les en-têtes envoyés par les serveurs HTTP et les réponses envoyées par les serveurs FTP.
- --spider
- Lorsqu'il est invoqué avec cette option, Wget se comportera comme
une araignée, sur la toile, il ne téléchargera
pas les pages, il vérifiera simplement leur présence. Vous
pouvez l'utiliser pour vérifier vos signets par exemple
wget --spider --force-html -i bookmarks.html
Cette caractéristique nécessite encore quelques efforts pour se rapprocher des fonctionnalités de véritable araignées WWW. - -T secondes
- --timeout=secondes
- Positionne le décompte de lecture à secondes
secondes. En cas d'émission d'une lecture réseau, le
descripteur de fichier est vérifié pour un décompte,
sinon une connexion pendante (lecture non interrompue) pourrait subsister.
Le décompte par défaut est 900 secondes (quinze
minutes). Positionnez le décompte à 0 pour désactiver
la vérification des décomptes.
Veuillez ne pas diminuer la valeur par défaut du décompte sans savoir exactement ce que vous êtes en train de faire.
- --dns-timeout=secondes
- Positionne le décompte de recherche DNS à secondes secondes. Une recherche DNS qui dépasse le temps spécifié sera stoppée. Par défaut ce temps est dépendant de l'implantation des bibliothèques systèmes.
- --connect-timeout=secondes
- Positionne le décompte de connexion à secondes secondes. Les connexions TCP qui mettent plus de temps que spécifier pour s'établir sont stoppées. Par défaut, ce temps est dépendant de l'implémentation des bibliothèques système.
- --read-timeout=secondes
- Positionne le décompte d'écriture (et de lecture) à secondes secondes. Les écritures prenant plus de temps que spécifié sont stoppées. La valeur par défaut est de 900 secondes.
- --limit-rate=valeur
- Limite la débit du téléchargement à
valeur octets par seconde. Il est possible d'exprimer cette valeur
en octets, kilooctets à l'aide du suffixe k ou en
mégaoctets à l'aide du suffixe m. Par exemple,
--limit-rate=20k limitera le débit à 20 ko/s.
Cette option est utile, entre autre, lorsqu'on ne souhaite pas que Wget
consomme toute la bande passante disponible.
Remarquez que Wget implante la limitation en dormant la durée appropriée après une réception depuis le réseau qui a pris moins de temps que spécifié par le débit. Au bout du compte, cette stratégie ralentit le transfert TCP approximativement au débit requis. Cependant, il se peut que cela prenne un peu de temps avant de se stabiliser ; ne soyez pas surpris si cette limite n'est pas vraiment respectée lors du transfert de petits fichiers.
- -w secondes
- --wait=secondes
- Attendre la durée spécifiée en secondes entre les
téléchargements. L'utilisation de cette option, est
recommandée, puisqu'elle allège la charge du serveur en
réduisant la fréquence des requêtes. À la
place des secondes, la durée peut être
spécifiée en minutes en utilisant le suffixe m, en
heures avec le suffixe h, ou en jours avec le suffixe d.
La spécification d'une durée importante est utile si le réseau ou l'hôte cible est coupé, aussi Wget peut attendre suffisamment longtemps que le réseau soit réparé avant de réessayer.
- --waitretry=secondes
- Si vous ne voulez pas que Wget attende entre chaque
téléchargement, mais uniquement entre les essais ou
téléchargement infructueux, vous pouvez utiliser cette
option. Wget attend n secondes au n-ième échec sur un
fichier, jusqu'au maximum spécifié. C'est pourquoi une
valeur de 10 fera patienter jusqu'à (1 + 2 + 3 +... + 10) =
55 secondes par fichier.
Remarquez que cette option est activée par défaut dans le fichier global .wgetrc.
- --random-wait
- Certains sites web peuvent analyser les logs pour identifier les
programmes de téléchargement comme Wget en recherchant les
similarités statistiques temporelles entre les requêtes.
Cette option fait varier la durée inter-requêtes entre 0 et
2 * wait secondes, où wait a été
spécifié par l'option -w (ou --wait), dans le
but de dissimuler la présence de Wget dans de telles analyses.
Un article récent dans une publication consacrée au développement sur une plate-forme cliente populaire fournissait le code pour réaliser cette analyse au vol. Son auteur suggérait de bloquer les adresses de classe C pour s'assurer que les programmes de téléchargement seront bloqués en dépit des changements d'adresses dues au DHCP.
L'option --random-wait a été inspirée par ce conseil mal avisé de bloquer l'accès à un site web à de nombreux utilisateurs innocents en raison des actions d'un seul.
- -Y on/off
- --proxy=on/off
- Active/Désactive le support proxy. Le proxy est activé par
défaut si la variable d'environnement appropriée est
définie.
Pour plus d'information sur l'utilisation de proxys, voir la section Proxies de l'entrée GNU Info.
- -Q quota
- --quota=quota
- Spécifie le quota de données pour les
téléchargements automatiques. La valeur peut être
spécifiée en octets (défaut), kilooctets (suffixe
k), ou mégaoctets (avec le suffixe m).
Remarquez que le quota n'affectera jamais le téléchargement d'un unique fichier. Aussi, si vous spécifiez wget -Q10k ftp://wuarchive.wustl.edu/ls-lR.gz, l'intégralité du fichier ls-lR.gz sera téléchargée. La même chose se produira si vous spécifiez plusieurs URL sur la ligne de commande. Wget ne tient compte du quota que pour les téléchargements récursifs ou depuis un fichier d'entrée. Aussi vous pouvez tapez sans crainte wget -Q2m -i sites : le téléchargement s'arrêtera lorsque le quota sera atteint.
Positionner le quota à 0 ou inf signifie aucun quota.
- --dns-cache=off
- Désactive le cache lors de recherches DNS. Normalement, Wget garde
en mémoire les adresses qu'il a déjà
recherchées sur le serveur de noms, ce qui lui évite de
recontacter à chaque fois le DNS pour le même (petit)
ensemble d'adresses à partir desquelles la
récupération est faite. Ce cache existe uniquement en
mémoire vive, à chaque exécution Wget contacte de
nouveau le DNS.
Toutefois, dans certains cas, il n'est pas désirable de garder en cache les noms d'hôte, même pour une durée courte telle que l'exécution de Wget. Par exemple, les serveurs HTTP qui sont hebergés sur des machines dont l'adresse IP est allouée dynamiquement et change fréquemment. Leur entrées DNS sont mises à jour à chaque changement. Quand le téléchargement depuis de tels hôtes est interrompu par un changement d'adresse IP, Wget réessaye de télécharger, mais (en raison du cache du DNS) il contacte l'ancienne adresse. Avec le cache DNS désactivé, Wget répétera la recherche DNS à chaque connexion, et ainsi obtiendra l'adresse dynamique correcte à chaque fois ; ceci au coût de recherches DNS supplémentaires et majoritairement inutiles.
Si vous ne comprenez pas la description ci-dessus, c'est que vous n'avez probablement pas besoin de cette option. (NDT : ou alors le traducteur s'est couché un peu trop tard !)
- --restrict-file-names=mode
- Modifie les caractères des URL distantes qui peuvent être
utilisés dans les noms de fichiers locaux
générés à partir de celles-ci. Les
caractères qui sont restreints par cette option sont
remplacés par %HH, où HH est le nombre
hexadécimal qui correspond au caractère remplacé.
Par défaut Wget remplace les caractères considérés invalides dans les noms de fichiers par le système d'exploitation, ainsi que les caractères de contrôle qui, pour la plupart, ne sont pas affichables. Cette option est utile pour modifier ce comportement par défaut, soit parce que vous souhaitez enregistrer les fichier sur une partition non-native, soit parce que vous souhaitez garder les caractères de contrôle.
Quand le mode est mis à « unix », Wget remplace le caractère / ainsi que les caractères de contrôle faisant partie des ensembles 0-31 et 128-159. C'est le mode par défaut sur les systèmes d'exploitation à la UNIX.
Quand le mode est mis à « windows », Wget remplace les caractères \, ⎪, /, :, ?, ", *, <, > ainsi que les caractères de contrôle faisant partie des ensembles 0-31 et 128-159. En plus de cela, dans le mode windows, Wget utilise + à la place de : pour séparer l'hôte du port dans les noms de fichiers locaux et utilise @ à la place de ? pour séparer la partie de requête du reste dans le nom de fichier. Ainsi, une URL qui serait sauvegardée sous le nom www.xemacs.org:4300/search.pl?input=blah en mode unix aurait le nom www.xemacs.org+4300/search.pl@input=blah en mode windows. Ce mode est celui par défaut sous Windows.
Si vous ajoutez ,nocontrol au mode, comme par exemple unix,nocontrol, le remplacement des caractères de contrôle est désactivé. Il est possible d'indiquer --restrict-file-names=nocontrol pour désactiver le remplacement des caractères de contrôle sans affecter le choix automatique du mode de restriction de caractère en fonction du système d'exploitation.
Options de répertoires
- -nd
- --no-directories
- Ne pas créer la hiérarchie de répertoires lors du téléchargement récursif. Si cette option est activée, tous les fichiers seront sauvegardés dans le répertoire courant, sans écrasement (si un nom apparaît plus d'une fois, les noms de fichiers auront un suffixe numéroté .n).
- -x
- --force-directories
- C'est l'opposé de -nd : créer une hiérarchie de répertoires, même si aucune n'aurait été créée autrement. Par exemple, wget -x http://fly.srk.fer.hr/robots.txt sauvegardera le fichier téléchargé dans le fly.srk.fer.hr/robots.txt.
- -nH
- --no-host-directories
- Désactive la génération de la racine des répertoires avec le nom de l'hôte. Par défaut, l'invocation de Wget avec -r http://fly.srk.fer.hr/ créera une hiérarchie de répertoires avec fly.srk.fer.hr/ comme racine. Cette option désactive ce comportement.
- --cut-dirs=n
- Ignore les n composantes du répertoire. C'est utile pour
contrôler finement le répertoire lors du
téléchargement récursif.
Par exemple, avec le répertoire ftp://ftp.xemacs.org/pub/xemacs/. Si vous le téléchargez avec l'option -r, il sera sauvegardé localement sous ftp.xemacs.org/pub/xemacs/. Alors que l'option -nH peut supprimer la partie ftp.xemacs.org/, vous êtes encore ennuyé avec pub/xemacs. C'est là que l'option --cut-dirs est intéressante ; elle permet de cacher à Wget n composantes du répertoire distant. Voici plusieurs exemples pour illustrer la fonctionnement de l'option --cut-dirs option.
pas d'option -> ftp.xemacs.org/pub/xemacs/ -nH -> pub/xemacs/ -nH --cut-dirs=1 -> xemacs/ -nH --cut-dirs=2 -> .
--cut-dirs=1 -> ftp.xemacs.org/xemacs/ ...
Si vous voulez juste vous débarrasser de la structure des répertoires, cette option est similaire à la combinaison -nd et -P. Cependant, contrairement à -nd, --cut-dirs ne se perd pas dans les sous-répertoires. Par exemple, avec -nH --cut-dirs=1, le sous-répertoire beta/ se retrouvera placé dans xemacs/beta, comme on s'y attend.
- -P prefixe
- --directory-prefix=prefixe
- Positionne le préfixe pour les répertoires à
prefixe. Le répertoire prefixe est le
répertoire où tous les autres fichiers seront
sauvegardés, c-a-d le sommet de l'arbre de
téléchargement. Par défaut c'est . (le
répertoire courant).
Options HTTP
- -E
- --html-extension
- Si un fichier de type application/xhtml+xml ou texte/html
est téléchargé et que l'URL ne se termine par
l'expression régulière \.[Hh][Tt][Mm][Ll]?, cette
option provoque l'ajout du suffixe .html au nom de fichier local.
C'est pratique, si vous êtes en train de répliquer un site
distant qui utilise des pages .asp, mais vous voulez que les pages
répliques soient visibles sur votre serveur Apache. Cette option
est aussi très utile lorsque vous téléchargez la
sortie de CGI. Une URL comme http://site.com/article.cgi?25 sera
sauvegardé sous article.cgi?25.html.
Remarquez que les noms de fichiers ainsi modifiés seront retéléchargés chaque fois que vous ferez une réplique du site, car Wget ne peut pas savoir que le fichier local X.html correspond à l'URL X distante (puisqu'il ne sait pas encore que l'URL produira une sortie de type texte/html ou application/xhtml+xml. Pour prévenir ce retéléchargement, vous devez utiliser -k et -K aussi la version originale de fichier sera sauvegardée sous le nom X.orig.
- --http-user=utilisateur
- --http-passwd=mot-de-passe
- Spécifie le nom d'utilisateur fIutilisateur et le mot de
passe fImot_de_passe pour un serveur HTTP. En fonction du type de
défi, Wget le cryptera en utilisant le mécanisme
d'authentification basic (non-sécurisé) ou
digest.
Une autre manière de spécifier le nom d'utilisateur et le mot de passe est d'utiliser l'URL elle-même. Les deux méthodes révèlent votre mot de passe à quiconque se donnant la peine de lancer "ps". Pour éviter que le mot de passe soit vu, stockez-le dans .wgetrc ou .netrc et assurez-vous que vous avez protégé ces fichiers des autres utilisateurs à l'aide de la commande "chmod". Si les mots de passe sont vraiment importants, supprimez-les de ces fichiers dès que Wget a terminé le téléchargement.
Pour plus d'informations en ce qui concerne les problèmes de sécurité, reportez-vous à la section Security Considerations de l'entrée GNU Info.
- -C on/off
- --cache=on/off
- Lorsque positionné à off, désactive le cache
côté serveur. Dans ce cas, Wget enverra au serveur distant
la directive appropriée (Pragma:no-cache) pour
récupérer le fichier depuis le service distant,
plutôt que la version cachée. C'est particulièrement
utile pour télécharger et purger des documents
obsolètes sur des serveurs proxies.
Le cache est autorisé par défaut.
- Lorsque positionné à off, désactive l'utilisation des cookies. Le cookie est un mécanisme pour préserver l'état du serveur. Le serveur envoie au client un cookie en envoyant l'en-tête Set-Cookie, et le client répondra avec le même cookie au requêtes ultérieures. Comme les cookies permettent aux propriétaires du serveur de suivre à la trace les visiteurs et pour les sites d'échanger cette information, on peut les considérer comme une brèche dans la sphère privée. Par défaut, les cookies sont utilisés ; cependant le stockage des cookies n'est pas activé par défaut.
- Charge les cookies depuis fichier avant le premier
téléchargement HTTP. fichier est un fichier texte
dans le format originellement utilisé par Netscape pour le fichier
cookies.txt
Vous utiliserez cette option lorsque vous répliquerez des sites qui requièrent d'être authentifié pour accéder à leur contenu. Le processus d'authentification repose typiquement sur l'envoi d'un cookie HTTP pour recevoir et vérifier votre accréditation. Le cookie est alors renvoyé par le navigateur lorsque vous accédez à certaines parties du site pour prouver votre identité.
Faire une copie d'un tel site requiert que Wget envoie les mêmes cookies que votre navigateur lorsqu'il communique avec le site. Ceci est fait en indiquant l'emplacement du fichier cookies.txt avec --load-cookies. Wget enverra les même cookies que votre navigateur dans la même situation. Les navigateurs stockent leurs cookies dans des endroits différents :
- Netscape 4.x.
- Les cookies sont dans ~/.netscape/cookies.txt.
- Mozilla and Netscape 6.x.
- Les cookies de Mozilla s'appellent aussi cookies.txt, et sont situés quelque part dans le répertoire ~/.mozilla. Le chemin complet ressemble souvent à ~/.mozilla/default/une-chaine-bizarre/cookies.txt.
- Internet Explorer.
- Vous pouvez fabriquer un fichier de cookies pour Wget en utilisant dans le menu Fichier, Importer et Exporter, Exporter les cookies. Ceci a été testé avec Internet Explorer 5 ; ce n'est pas garanti que ça marche avec les versions antérieures.
- Autres navigateurs.
- Si vous utilisez un autre navigateur pour créer vos cookies --load-cookies ne fonctionnera que si vous pouvez indiquer l'emplacement ou produire un fichier cookie dans le format Netscape comme s'y attend Wget.
Si vous ne pouvez pas utiliser --load-cookies, il reste encore une alternative. Si votre navigateur supporte le gestionnaire de cookies, vous pouvez l'utiliser pour voir les cookies utilisés pour l'accès au site que vous copiez. Recopier le nom et la valeur du cookie et dites manuellement à Wget d'envoyer ces cookies, en court-circuitant le support officiel des cookies :
wget --cookies=off --header "Cookie: <nom>=<valeur>"
- Sauvegarde les cookies dans fichier à la fin de la session. Les cookies sans date d'expiration, ou qui sont déjà périmés, ne sont pas sauvegardés.
- --ignore-length
- Malheureusement, certains serveurs HTTP (des programmes CGI, pour
être plus précis) envoient des en-têtes avec un bogue
dans « Content-Length », ce qui fait que Wget
se comporte bizarrement et ne pense pas que tout le document a
été téléchargé. Vous pouvez
détecter ce syndrome si Wget essaye de récupérer le
même document encore et encore, disant à chaque fois que la
connexion a été fermée au même endroit dans le
document.
Avec cette option, Wget ignorera l'en-tête « Content-Length », s'il est présent.
- --header=en-tête-additionel
- Définit un en-tête additionnel à passer aux serveurs
HTTP. L'en-tête doit contenir un
« : » précédé par
un ou plusieurs caractères non blancs, et ne doit pas contenir de
retour à la ligne.
Vous pouvez définir plus d'un en-tête additionnel en utilisant plusieurs fois l'option --header.
wget --header='Accept-Charset: iso-8859-2' \ --header='Accept-Language: hr' \ http://fly.srk.fer.hr/
La spécification d'une chaîne de caractères vide comme valeur d'en-tête effacera tous les en-têtes prédéfinis par l'utilisateur. - --proxy-user=utilisateur
- --proxy-passwd=mot-de-passe
- Spécifie le nom d'utilisateur utilisateur et le mot de passe
mot-de-passe pour l'authentification sur un serveur proxy. Wget les
encodera en utilisant le mécanisme d'authentification de
base.
Les mêmes considérations sur la sécurité sont valables que pour l'option --http-passwd.
- --referer=url
- Inclut « Referer: url » dans la requête HTTP. C'est utile pour récupérer des documents quand le traitement du coté serveur suppose qu'ils sont toujours récupérés par des navigateurs web interactifs et qu'ils ne sont envoyés correctement que lorsque « Referer » est positionné à l'une des pages qui pointent vers eux.
- -s
- --save-headers
- Enregistre les en-têtes envoyés par le serveur HTTP vers le fichier, avant le contenu réel, avec une ligne vide comme séparateur.
- -U agent-string
- --user-agent=agent-string
- S'identifier sous le nom agent-string pour le serveur HTTP.
Le protocole HTTP autorise les clients à s'identifier eux-mêmes en utilisant le champ « User-Agent » dans l'en-tête. Ceci permet de distinguer les logiciels WWW, le plus souvent pour des buts statistiques ou pour tracer des violations de protocole. Wget s'identifie normalement sous le nom Wget/version, version étant la numéro de la version courante de Wget.
Cependant, certains sites sont connus pour imposer une politique de filtrage sur des clients en fonction de « User-Agent ». Si, conceptuellement, ce n'est pas une trop mauvaise idée, ça se traduit souvent par le refus de servir les clients autres que Mozilla ou Microsoft Internet Explorer. Cette option vous permet de falsifier la valeur de « User-Agent » envoyée par Wget. L'utilisation de cette option n'est pas recommandée, à moins que vous ne sachiez vraiment ce que vous êtes en train de faire.
- --post-data=chaîne
- --post-file=fichier
- Utilise POST comme méthode pour toutes les requêtes HTTP et
envoie les données spécifiées dans le corps de la
requête. "--post-data" transmet
chaîne comme donnée tandis que
"--post-file" transmet le contenu de
fichier. Autrement, les deux commandes sont identiques.
Veuillez noter que Wget a besoin de connaître la taille des données POST à l'avance. Par conséquent l'argument à "--post-file" doit être un fichier normal, une FIFO des entrées telles que /dev/stdin ne fonctionnent pas. Il n'est pas vraiment certain comment cette limitation de HTTP/1.0 peut être contournée. Même si HTTP/1.1 introduit la notion de transferts en blocs qui ne requiert pas de connaître la taille à l'avance, un client ne peut utiliser cette fonction tant qu'il n'est pas sûr que le serveur supporte HTTP/1.1. Malheureusement, il n'est pas possible de le savoir avant que de recevoir la première réponse, ce qui requiert que la requête soit finie... le problème de l'oeuf et de la poule !
Remarquez que si Wget est redirigé après l'envoi de la requête POST, il ne transmettra pas les données POST à la nouvelle adresse. Ceci est dû au fait que souvent, les URL qui traitent le POST renvoient une redirection vers une page normale (même si, techniquement, ce n'est pas vraiment autorisé) qui ne désire pas ou ne supporte pas le POST. Il n'est pas encore clair si ce comportement est optimal ; si ça ne marche pas, ça changera.
L'exemple ci-dessous montre comment s'identifier sur un serveur en utilisant POST puis comment télécharger les pages souhaitées, qui ne sont accessible qu'aux utilisateurs autorisés :
# Identification sur le serveur. Cela peut être fait une seule fois. wget --save-cookies cookies.txt \ --post-data 'user=truc&password=bidule' \ http://server.com/auth.php
# Maintenant on peut récupérer tout ce qui nous intéresse. wget --load-cookies cookies.txt \ -p http://server.com/interesting/article.php
Options FTP
- -nr
- --dont-remove-listing
- Ne pas supprimer les fichiers temporaires .listing
générés par les requêtes FTP. Normalement, ces
fichiers contiennent la liste brute des répertoires reçus
depuis les serveurs FTP. Ne pas les supprimer peut être utile pour
le débogage ou pour vérifier facilement le contenu des
répertoires distants (par exemple pour vérifier que le
miroir que vous êtes en train de consulter est complet).
Remarquez que, même si Wget écrit dans un nom de fichier connu, ce n'est pas un trou de sécurité dans le scénario où un utilisateur crée un lien symbolique .listing vers /etc/passwd ou quelque chose d'autre et demande à root de lancer Wget dans son répertoire. En fonction de l'option utilisée, Wget refusera d'écrire dans .listing, faisant échouer l'opération d'écrasement, ou il supprimera le lien symbolique et le remplacera par le fichier .listing, ou le listing sera écrit dans un fichier .listing.number.
Même si cette situation n'est pas un problème, root ne devrait jamais lancer Wget dans le répertoire d'un utilisateur en qui il n'a pas confiance. Un utilisateur peut faire quelque chose d'aussi simple qu'un lien index.html vers /etc/passwd et demander à root de lancer Wget avec -N ou -r aussi le fichier sera remplacé.
- -g on/off
- --glob=on/off
- Active/désactive l'englobement FTP. L'englobement signifie que vous
pouvez utiliser les caractères génériques comme
*, ?, [ et ] pour récupérer
plusieurs fichiers d'un même répertoire en une fois. Par
exemple :
wget ftp://gnjilux.srk.fer.hr/*.msg
Par défaut, l'englobement est activé si l'URL contient un caractère générique. Cette option permet d'activer ou de désactiver l'englobement de manière permanente.Vous pouvez avoir à protéger l'URL avec des guillemets pour empêcher le shell d'interpréter les caractères génériques. L'englobement oblige Wget à regarder un listing de répertoires, qui est dépendant du système. C'est pourquoi, pour le moment ça ne marche qu'avec les serveurs FTP Unix (et ceux qui émulent la sortie du \[u00AB] ls » Unix).
- --passive-ftp
- Utilise le mécanisme de téléchargement FTP passif, dans lequel le client initialise la connexion de données. C'est parfois requis pour accéder à des FTP qui sont derrière des pare-feux.
- --retr-symlinks
- Habituellement, lors du téléchargement récursif de
répertoires FTP, si on rencontre un lien symbolique, le fichier
lié n'est pas téléchargé. À la place,
on crée un lien symbolique identique sur le système de
fichiers local. Le fichier pointé ne sera pas
téléchargé, à moins bien sûr que le
téléchargement récursif ne le rencontre plus tard.
Cependant, quand --retr-symlinks est spécifié, les liens symboliques sont suivis et les fichiers désignés sont récupérés. Pour le moment, cette option ne permet pas à Wget de suivre les liens symboliques sur les répertoire pour y poursuivre sa récursion, mais ceci devrait être amélioré dans le futur.
Remarquez que cette option n'a aucun effet pour le téléchargement d'un fichier (et non un répertoire) si celui-ci a été spécifié sur la ligne de commande plutôt que rencontré lors de la récursion. Dans ce cas les liens symboliques sont toujours suivis.
Options de téléchargement récursif
- -r
- --recursive
- Active le téléchargement récursif.
- -l profondeur
- --level=profondeur
- Spécifie la profondeur maximale profondeur pour la récursion. Par défaut la profondeur maximale est 5.
- --delete-after
- Cette option indique à Wget de détruire tous les fichiers
qu'il télécharge, après l'avoir fait. C'est
utile pour précharger les pages les plus populaires dans un proxy,
par exemple :
wget -r -nd --delete-after http://whatever.com/~popular/page/
L'option -r télécharge récursivement et -nd ne crée pas de répertoires.Remarquez que --delete-after efface les fichiers sur la machine locale. Ça n'a rien à voir avec la commande DELE des serveurs FTP. Remarquez aussi que si --delete-after est spécifié, --convert-links est ignoré, et donc les fichiers .orig ne sont pas crées.
- -k
- --convert-links
- Une fois que le téléchargement est terminé, convertit
les liens du document pour qu'il soit consultable en local. Ceci affecte
non seulement les liens hypertextes, mais aussi toute partie du document
qui lie un contenu extérieur, comme les images, les liens vers les
feuilles de style, les hyperliens vers du contenu non-HTML, etc.
Chaque lien sera modifié de l'une des deux façons suivantes :
- .
- Les liens vers les fichiers qui ont été
téléchargés par wget seront transformés en
liens relatifs.
Exemple : si le fichier téléchargé /toto/doc.html a un lien vers /titi/image.gif, aussi téléchargé, alors le lien dans doc.html sera modifié pour pointer vers ../titi/image.gif. Ce type de transformation fonctionne très bien quelle que soit la combinaison de répertoires.
- .
- Les liens vers les fichiers qui n'ont pas été
téléchargés par Wget seront modifiés pour
inclure le nom d'hôte et le chemin absolu vers la destination.
Exemple : si le fichier téléchargé /toto/doc.html a un lien vers /titi/image.gif (ou vers ../titi/image.gif), alors le lien dans doc.html sera modifié pour pointé vers http://nom-d-hote/titi/image.gif.
Grâce à ceci, la navigation locale fonctionne bien : si un fichier lié a été téléchargé, le lien désigne son nom local ; sinon, le lien désigne son nom Internet complet plutôt qu'un lien brisé. Le fait que les anciens liens soient convertis en liens relatifs vous permet de déplacer ailleurs les hiérarchies téléchargées.
Remarquez que Wget ne peut pas savoir avant la fin du téléchargement quels seront les liens téléchargés. C'est pourquoi le travail accompli par -k n'a lieu qu'après la fin de tous les téléchargements.
- -K
- --backup-converted
- Lors de la conversion d'un fichier, sauvegarde le fichier original avec le suffixe .orig. Ceci affecte le comportement de -N.
- -m
- --mirror
- Active toutes les options convenables pour faire un miroir. Cette option active la récursion, l'estampille temporelle, positionne la profondeur de récursion maximale à +infini et conserve le listing des répertoires FTP. Actuellement c'est équivalent à -r -N -l inf -nr.
- -p
- --page-requisites
- Cette option oblige Wget à télécharger tous les
fichiers nécessaires à l'affichage convenable d'une page
HTML donnée. Notamment les images, sons et feuilles de styles
référencées.
Ordinairement, lors du téléchargement d'une unique page HTML, les documents requis pour l'afficher proprement ne sont pas téléchargés. L'utilisation de -r et -l peut aider, mais puisque Wget ne fait pas d'ordinaire la distinction entre les documents externes et internes, on se retrouve parfois avec des « documents feuilles » qui n'ont pas leurs prérequis.
Par exemple, si le document 1.html contient une balise "<IMG>" référençant 1.gif et une balise "<A>" pointant vers un document externe 2.html. Et si 2.html est similaire mais que son image est 2.gif et qu'il a un lien vers 3.html. On peut aller loin comme ça.
Si on exécute la commande
wget -r -l 2 http://<site>/1.html
alors 1.html, 1.gif, 2.html, 2.gif et 3.html seront téléchargés. Comme vous pouvez le constater, 3.html n'aura pas sa dépendance 3.gif parce Wget compte simplement le nombre de sauts (ici jusqu'à 2) depuis 1.html dans le but de déterminer où il doit arrêter la récursion. Cependant, avec cette commande :wget -r -l 2 -p http://<site>/1.html
tous les fichiers ci-dessus et la dépendance 3.gif de 3.html seront télécharchés. Similairement,wget -r -l 1 -p http://<site>/1.html
provoquera le téléchargement de 1.html, 1.gif, 2.html, et de 2.gif. On pourrait croire que :wget -r -l 0 -p http://<site>/1.html
ne téléchargera que 1.html et 1.gif, mais malheureusement ce n'est pas le cas car -l 0 est équivalent à -l inf, la récursion infinie. Pour télécharger une unique page HTML (ou une poignée d'entre elles, toutes spécifiées sur la ligne de commande, ou dans un fichier d'entrée -i URL ) et leurs dépendances, laissez simplement de coté -r et -l :wget -p http://<site>/1.html
Remarquez que Wget se comportera comme si -r avait été spécifié, mais une seule page sera téléchargée, avec ses dépendances. Les liens de cette page vers des documents externes ne seront pas suivis. En réalité, pour télécharger une page unique avec ses dépendances, (même si celles-ci sont sur d'autres sites) et être sûr que tout s'affichera correctement en local, l'auteur utilise conjointement d'autres options :wget -E -H -k -K -p http://<site>/<document>
Pour clore ce sujet, ça vaut la peine de connaître l'idée que se fait Wget d'un lien vers un document externe : c'est toute URL spécifiée dans une balise "<A>", "<AREA>", ou "<LINK>" autre que "<LINK REL="stylesheet">".
- --strict-comments
- Active l'analyse syntaxique stricte des commentaires HTML. Par
défaut la première occurrence de --> est
considérée comme la fin du commentaire.
D'après les spécifications, les commentaires HTML sont représentés comme les déclarations SGML. Une déclaration est une balise spéciale qui commence par <! et se termine par >, tel que <!DOCTYPE ...>. Elles peuvent contenir des commentaires qui sont alors délimités du reste par une paire de --. Les commentaires HTML sont des « déclarations vides », des déclarations SGML qui ne contiennent que des commentaires. Par conséquent <!--truc--> est un commentaire valide, de même que <!--un-- --deux--> mais pas <!--1--2-->.
D'un autre coté, la plupart des auteurs HTML ne perçoivent les commentaires que comme du texte délimité par <!-- et -->, ce qui est légèrement différent. Par exemple, quelque chose comme <!------------> n'est un commentaire valide que s'il y a un nombre de tirets multiple de quatre ! Sinon, techniquement, le commentaire ne s'arrête qu'au prochain --, qui peut être situé à l'autre bout du document. À cause de cela, la plupart des navigateurs Web ignorent complètement la spécification et implantent la définition plus intuitive qu'un commentaire est délimité par <!-- et -->.
Jusqu'à la version 1.9 Wget interprétait les commentaires de manière stricte, ce qui provoquait parfois la disparition de certain liens dans des pages qui s'affichent correctement dans les navigateurs mais qui ont la malchance de contenir des commentaires non valides. Depuis la version 1.9, Wget a rejoint le cercle des clients qui implantent des commentaires « intuitifs », considérant la première occurrence de --> comme la fin d'un commentaire.
Si, pour une raison quelconque, vous souhaitez une analyse syntaxique stricte, utilisez cette option.
Options récursives d'acceptation et de rejet
- -A accliste --accept accliste
- -R rejliste --reject rejliste
- spécifie la liste (avec la virgule comme séparateur) des suffixes ou modèles de noms de fichiers qui doivent être acceptés ou rejetés.
- -D liste-domaines
- --domains=liste-domaines
- Indiques les noms de domaine qui peuvent être suivis. liste-domaines est une liste avec la virgule comme séparateur. Remarquez que ça n'active pas -H.
- --exclude-domains liste-domaines
- Exclut les domaines contenus dans la liste liste-domaines des liens à suivre.
- --follow-ftp
- Suit les liens FTP depuis les documents HTML. Sans cette option, Wget ignorera tous les liens FTP.
- Wget a une table interne de balises HTML qu'il considère lorsqu'il examine les documents liés durant un téléchargement récursif. Si un utilisateur veut se limiter à un sous-ensemble de ces balises, celui-ci peut les spécifier à l'aide de cette option dans liste, avec la virgule comme séparateur.
- -G liste
- C'est l'opposé de l'option --follow-tags option. Pour
laisser de côté certaines balises HTML lors du
téléchargement récursif, spécifier les dans
une liste avec la virgule comme séparateur.
Dans le passé, l'option -G était la meilleure pour télécharger une page avec ses dépendances, en utilisant une ligne de commande comme :
wget -Ga,area -H -k -K -r http://<site>/<document>
Cependant, l'auteur de cette option a trouvé des pages avec des balises comme <LINK REL="home" HREF="/"> et il réalisa que l'option -G n'était pas suffisante. On ne peut pas non plus dire à Wget d'ignorer <LINK>, sinon les feuilles de style ne seront pas téléchargées. Maintenant, pour télécharger une page unique avec ses dépendances, il y a l'option dédiée --page-requisites. - -H
- --span-hosts
- Autorise le changement d'hôtes lors d'un téléchargement récursif.
- -L
- --relative
- Ne suivre que les liens relatifs. C'est utile pour récupérer une page web sans être distrait, même par celles qui sont sur le même hôte.
- -I liste
- --include-directories=liste
- Spécifie une liste de répertoires séparés par des virgules que vous voulez suivre lors du téléchargement. Les éléments de liste peuvent contenir des caractères génériques.
- -X liste
- --exclude-directories=liste
- Spécifie une liste de répertoires séparés par des virgules que vous voulez exclure du téléchargement. Les éléments de liste peuvent contenir des caractères génériques.
- -np
- --no-parent
- Ne pas remonter dans les répertoires parents. C'est une option utile, puisqu'elle garantit que seuls les fichiers en dessous d'une certaine hiérarchie seront téléchargés.
EXEMPLES¶
Les exemples sont regroupés en trois sections en fonction
de leur complexité.
Utilisation simple
- .
- Si vous voulez juste télécharger une URL. Tapez
juste :
wget http://fly.srk.fer.hr/
- .
- Mais que se passera-t-il si la connexion est lente et le fichier
gros ? La connexion sera probablement interrompue avant que
l'intégralité du fichier ne soit rapatriée. Dans ce
cas, Wget essayera de re-télécharger le fichier
jusqu'à ce qu'il y arrive ou qu'il dépasse le nombre de
tentatives par défaut (c'est-à-dire 20). Il est facile de
changer le nombre de tentatives par 45, pour s'assurer que
l'intégralité du fichier arrivera :
wget --tries=45 http://fly.srk.fer.hr/jpg/flyweb.jpg
- .
- Maintenant laissons Wget travailler en arrière-plan, et
écrire sa progression dans le fichier de log. C'est fatigant de
taper --tries, aussi nous utiliserons -t.
wget -t 45 -o log http://fly.srk.fer.hr/jpg/flyweb.jpg &
L'esperluette à la fin de la ligne envoie Wget à l'arrière plan. Pour avoir un nombre infini de tentatives, utilisez -t inf. - .
- L'usage du FTP est aussi simple. Wget tiendra compte du login et du mot de
passe.
wget ftp://gnjilux.srk.fer.hr/welcome.msg
- .
- Si vous spécifiez un répertoire, Wget
téléchargera l'inventaire du répertoire et le
transformera en document HTML. Essayez :
wget ftp://prep.ai.mit.edu/pub/gnu/ links index.html
Utilisation avancée
- .
- Vous avez un fichier qui contient les URL que vous voulez
télécharger, utiliser l'option -i :
wget -i <file>
Si vous spécifiez « - » comme nom de fichier, les URL seront lues depuis l'entrée standard. - .
- Créer une image miroir de profondeur 5 du site web de GNU, avec la
même structure de répertoire que l'original, avec un seul
essai par document, et en sauvegardant le log des activités dans
gnulog :
wget -r http://www.gnu.org/ -o gnulog
- .
- Même chose que ci-dessus mais en convertissant les liens dans les
fichiers HTML pour pointer vers des fichiers locaux, pour que vous
puissiez les consulter hors-ligne :
wget --convert-links -r http://www.gnu.org/ -o gnulog
- .
- Télécharger une seule page HTML, mais en étant
sûr que tous les éléments nécessaires à
son affichage, tels que les images incluses et les feuilles de styles
externes seront aussi téléchargées. Et s'assurer
aussi que la page téléchargée référence
les liens téléchargés.
wget -p --convert-links http://www.server.com/dir/page.html
La page HTML sera sauvegardé dans www.server.com/dir/page.html, et les images, feuilles de styles, etc, quelque part dans www.server.com/, en fonction de l'endroit où elles étaient sur le serveur distant. - .
- Même chose que ci-dessus, mais sans créer le
répertoire www.server.com/. En fait, je ne veux pas de tous
ces noms de répertoires aléatoires du serveur, je veux juste
sauvegarder tous les fichiers dans le sous-répertoire
download/ du répertoire courant.
wget -p --convert-links -nH -nd -Pdownload \ http://www.server.com/dir/page.html
- .
- Télécharger le fichier index.html de www.linuxfr.org,
en affichant les en-têtes originaux du serveur :
wget -S http://www.linuxfr.org/
- .
- Enregistrer les en-têtes du serveur, peut-être pour un
traitement ultérieur.
wget -s http://www.linuxfr.org/ more index.html
- .
- Télécharger les deux premiers niveaux de
wuarchive.wustl.edu, et les mettre dans /tmp.
wget -r -l2 -P/tmp ftp://wuarchive.wustl.edu/
- .
- Vous voulez télécharger tous les images GIF d'un
répertoire depuis un serveur HTTP. Vous avez essayé wget
http://www.server.com/dir/*.gif, mais ça ne fonctionne pas car
le téléchargement HTTP ne gère pas l'expansion de
nom. Dans ce cas, utilisez :
wget -r -l1 --no-parent -A.gif http://www.server.com/dir/
Explication : -r -l1 signifie téléchargement récursif, jusqu'à la profondeur 1. --no-parent signifie que les références au répertoire parent sont ignorées et -A.gif signifie de ne télécharger que les fichiers GIF. -A "*.gif" marche aussi. - .
- Supposons que vous étiez au milieu d'un
téléchargement, et que Wget a été interrompu.
Maintenant vous voulez remplacer les fichiers déjà
présents Ce sera :
wget -nc -r http://www.gnu.org/
- .
- Si vous voulez encoder votre nom d'utilisateur et votre mot de passe pour
HTTP ou FTP, utilisez la syntaxe URL appropriée :
wget ftp://mon_nom:mot_de_passe@unix.server.com/.emacs
- .
- Vous voulez rediriger la sortie des documents sur la sortie standard au
lieu des fichiers :
wget -O - http://jagor.srce.hr/ http://www.srce.hr/
Vous pouvez aussi combiner les deux options et fabriquer des pipelines pour télécharger des documents référencé par un autre site.wget -O - http://cool.list.com/ ⎪ wget --force-html -i -
Utilisation très avancée
- .
- Si vous voulez que Wget conserve la réplique d'une page (ou de
sous-répertoire FTP ), utilisez --mirror (-m), qui
est le raccourci pour -r -l inf -N. Vous pouvez mettre Wget dans le
fichier crontab pour lui demander de revérifier le site chaque
dimanche :
crontab 0 0 * * 0 wget --mirror http://www.gnu.org/ -o /home/me/weeklog
- .
- En plus de ci-dessus, vous désirez convertir les liens pour la
consultation locale. Mais après avoir lu ce manuel, vous savez que
la conversion de lien ne gère pas bien l'estampille temporelle,
aussi vous désirez que Wget conserve une copie des fichiers HTML
avant conversion. L'invocation de Wget ressemblera à :
wget --mirror --convert-links --backup-converted \ http://www.gnu.org/ -o /home/me/weeklog
- .
- Mais vous avez aussi remarqué que la consultation locale ne
fonctionne pas du tout quand les fichiers HTML sont sauvegardés
avec d'autres extensions que .html, peut-être parce qu'ils
ont été envoyés sous le nom index.cgi. Aussi,
vous voudriez que Wget renomme les fichiers avec content-type
text/html et le nom nom.html.
wget --mirror --convert-links --backup-converted \ --html-extension -o /home/me/weeklog \ http://www.gnu.org/
Ou, en abrégé :wget -m -k -K -E http://www.gnu.org/ -o /home/me/weeklog
FICHIERS¶
- /etc/wgetrc
- Emplacement par défaut du fichier de démarrage global.
- .wgetrc
- Fichier de démarrage de l'utilisateur.
BOGUES¶
Les rapports de bogues sont les bienvenus. Envoyez-les à <bug-wget@gnu.org>.
Avant de soumettre un rapport de bogue, veuillez suivre les conseils simples suivants :
- 1.
- Assurez-vous que le comportement que vous voyez est réellement un bogue. Si Wget crashe, c'est un bogue. Si Wget ne se comporte pas comme la documentation l'indique, c'est un bogue. Si les choses fonctionnent bizarrement, et que vous n'êtes pas sûr de la manière dont elles sont supposées fonctionner, ça peut aussi être un bogue.
- 2.
- Essayer de mettre en évidence les circonstances qui provoquent le
bogue. Par exemple si Wget crashe avec wget -rLl0 -t5 -Y0
http://yoyodyne.com -o /tmp/log, vous devriez essayer de voir
s'il crashe avec un ensemble plus réduit d'option.
Bien que je sois aussi intéressé par le contenu du fichier .wgetrc, il ne faut pas le recopier directement dans le message de debug. Il vaut mieux essayer de reproduire le bogue avec un .wgetrc le plus simple possible. Seuls les paramètres de .wgetrc qui ont une influence sur le bogue, devrait être envoyés par courrier électronique.
- 3.
- Démarrez s'il vous plaît avec l'option -d et envoyez le log (ou uniquement les parties concernées). Si Wget a été compilé sans le support debug, recompilez-le. C'est vraiment plus facile de traquer les bogues avec le support du débogage activé.
- 4.
- Si Wget a planté, essayez de le lancer dans un débogueur, par exemple gdb `which wget` core et tapez where pour obtenir la pile des appels.
VOIR AUSSI¶
L'entrée GNU Info de wget.
AUTEUR¶
Écrit à l'origine par Hrvoje Niksic <hniksic@arsdigita.com>.
COPYRIGHT¶
Copyright (c) 1996, 1997, 1998, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
Vous avez l'autorisation de créer et de distribuer des copies textuelles de ce manuel, à condition que la notice de copyright et la notice de permission soient préservées dans toutes les copies.
Vous avez l'autorisation de copier, distribuer et/ou modifier ce documents sous les conditions de la GNU Free Documentation License, Version 1.1 ou toute version ultérieure publiée par la Free Software Foundation; avec comme sections invariantes « GNU General Public License » et « GNU Free Documentation License », sans texte avant ou après. Une copie de la licence est incluse dans la section intitulée « GNU Free Documentation License ».
TRADUCTION¶
Sébastien Blanchet, 2002
Mise à jour par Eric Piel, 2004 <Eric.Piel AT tremplin-utc POINT net>
AVERTISSEMENT SUR LA TRADUCTION¶
Il est possible que cette traduction soit imparfaite ou périmée. En cas de doute, veuillez vous reporter au document original en langue anglaise fourni avec le programme.
31 août 2004 | GNU Wget 1.9.1 |