Utilisez à la wget
place. Vous pouvez l'installer avec brew install wget
si vous avez installé Homebrew ou sudo port install wget
si vous avez installé MacPorts.
Pour télécharger des fichiers depuis une liste de répertoires, utilisez -r
(récursif), -np
(ne suivez pas les liens vers les répertoires parents), et -k
créez des liens au format HTML ou CSS téléchargé vers des fichiers locaux (crédit @xaccrocheur).
wget -r -np -k http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
Autres options utiles:
-nd
(pas de répertoires): télécharge tous les fichiers dans le répertoire courant
-e robots.off
: ignore les fichiers robots.txt, ne télécharge pas les fichiers robots.txt
-A png,jpg
: accepte uniquement les fichiers avec les extensions png
oujpg
-m
(miroir): -r --timestamping --level inf --no-remove-listing
-nc
, --no-clobber
: Ignorer le téléchargement si des fichiers existent
wget -r -np -k http://your.website.com/specific/directory
. L'astuce consiste à utiliser-k
pour convertir les liens (images, etc.) pour une visualisation locale.brew
etport
ne fonctionne pas pour moi d'installer wget. Que devrais-je faire?-k
ne fonctionne pas toujours. Par exemple, si vous avez deux liens pointant vers le même fichier sur la page Web que vous essayez de capturer de manière récursive, ilwget
ne semble que convertir le lien de la première instance, mais pas celui de la seconde.curl
ne peut lire que des fichiers de pages Web uniques, le groupe de lignes que vous avez obtenu est en fait l’index des répertoires (que vous voyez également dans votre navigateur si vous allez à cette URL). Pour utilisercurl
et certains outils Unix magiques pour obtenir les fichiers, vous pouvez utiliser quelque chose commequi obtiendra tous les fichiers dans le répertoire en cours.
Pour des besoins plus élaborés (y compris obtenir un tas de fichiers d'un site avec des dossiers / répertoires),
wget
(comme proposé dans une autre réponse déjà) est la meilleure option.la source
xmllint --html --xpath '//a/@href'
est probablement un meilleur analyseur quegrep
.Réf.: Http://blog.incognitech.fr/download-files-from-apache-server-listing-directory/
Vous pouvez utiliser la commande suivante:
Explication avec chaque option
wget
: Commande simple pour faire une requête CURL et télécharger des fichiers distants sur notre machine locale.--execute="robots = off"
: Cela ignorera le fichier robots.txt lors de l'exploration de pages. C'est utile si vous ne recevez pas tous les fichiers.--mirror
: Cette option reflètera la structure de répertoires pour l’URL donnée. C'est un raccourci pour-N -r -l inf --no-remove-listing
ce qui signifie:-N
: ne pas ré-récupérer des fichiers sauf si plus récent que local-r
: spécifier un téléchargement récursif-l inf
: profondeur de récursion maximale (inf ou 0 pour l'infini)--no-remove-listing
: ne supprimez pas les fichiers '.listing'--convert-links
: faire des liens dans HTML ou CSS téléchargé pointent vers des fichiers locaux--no-parent
: ne pas monter dans le répertoire parent--wait=5
: attendez 5 secondes entre les récupérations. Pour ne pas écraser le serveur.<website-url>
: Ceci est l'URL du site Web à partir duquel télécharger les fichiers.Bon téléchargement: smiley:
la source
Vous pouvez utiliser httrack disponible pour Windows / MacOS et installable via Homebrew.
la source
Pour ceux d'entre nous qui préfèrent utiliser une application avec une interface graphique, il existe le programme de shareware peu coûteux DeepVacuum pour Mac OS X , qui est implémenté
wget
de manière conviviale, avec une liste de paramètres prédéfinis pouvant gérer des tâches courantes. Vous pouvez également enregistrer vos propres configurations personnalisées en tant que préréglages.la source