web-dev-qa-db-fra.com

Comment télécharger tous les fichiers (mais pas le HTML) depuis un site web en utilisant wget?

Comment utiliser wget et obtenir tous les fichiers du site Web?

J'ai besoin de tous les fichiers sauf les fichiers de pages Web tels que HTML, PHP, ASP etc.

152
Aniruddhsinh

Pour filtrer des extensions de fichiers spécifiques:

wget -A pdf,jpg -m -p -E -k -K -np http://site/path/

Ou, si vous préférez les noms d'option longs:

wget --accept pdf,jpg --mirror --page-requisites --adjust-extension --convert-links --backup-converted --no-parent http://site/path/

Cela reflètera le site, mais les fichiers sans l'extension jpg ou pdf seront automatiquement supprimés.

243
Zsolt Botykai

Ceci a téléchargé le site entier pour moi:

wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://site/path/
82
izilotti
wget -m -p -E -k -K -np http://site/path/

page de manuel vous dira ce que font ces options.

wget ne suivra que les liens. S'il n'y a pas de lien vers un fichier de la page d'index, alors wget ne saura pas qu'il existe et ne le téléchargera donc pas. c'est à dire. il est utile que tous les fichiers soient liés à des pages Web ou à des index de répertoires.

62
Jesse

J'essayais de télécharger des fichiers Zip liés à partir de page des thèmes d'Omeka - tâche assez similaire. Cela a fonctionné pour moi:

wget -A Zip -r -l 1 -nd http://omeka.org/add-ons/themes/
  • -A: n'accepte que les fichiers Zip
  • -r: recurse
  • -l 1: un niveau (c’est-à-dire, uniquement les fichiers directement liés à cette page)
  • -nd: ne créez pas de structure de répertoire, téléchargez simplement tous les fichiers dans ce répertoire.

Toutes les réponses avec -k, -K, -E etc options n'ont probablement pas vraiment compris la question, comme pour la réécriture de pages HTML afin de créer une structure locale, renommer .php fichiers et ainsi de suite. Non pertinent.

Pour obtenir littéralement tous les fichiers sauf .html etc:

wget -R html,htm,php,asp,jsp,js,py,css -r -l 1 -nd http://yoursite.com
22
Steve Bennett

Vous pouvez essayer:

wget --user-agent=Mozilla --content-disposition --mirror --convert-links -E -K -p http://example.com/

Aussi, vous pouvez ajouter:

-A pdf,ps,djvu,tex,doc,docx,xls,xlsx,gz,ppt,mp4,avi,Zip,rar

pour accepter les extensions spécifiques ou pour ne rejeter que des extensions spécifiques:

-R html,htm,asp,php

ou pour exclure les zones spécifiques:

-X "search*,forum*"

Si les fichiers sont ignorés pour les robots (par exemple, les moteurs de recherche), vous devez également ajouter: -e robots=off

7
kenorb

Essaye ça. Ça marche toujours pour moi

wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
5
Suneel Kumar
wget -m -A * -pk -e robots=off www.mysite.com/

cela téléchargera tous les types de fichiers localement et pointera vers eux à partir du fichier html et ignorera le fichier robots

Sur les systèmes Windows afin d’obtenir wget, vous pouvez

  1. télécharger Cygwin
  2. télécharger GnuWin32
3
ebinx

Cela fonctionne pour moi:

wget -r -np http://yoursite.com/path/
0
Carlo Carandang