44 private links
Vous êtes sûrement déjà tombé sur un site intéressant contenant, par exemple, des fichiers pdf et vous êtes dit qu’il serait bien de tous les télécharger pour les étudier plus tard. Ou plus simplement vous êtes curieux de ce qu’on pourrait trouver en se baladant « au hasard » sur le web sans passer par un moteur de recherche qui est susceptible de faire un tri.
La commande wget permet cela de façon très simple.
Jugez plutôt ;) :
wget -r -H -nd –random-wait –load-cookies –follow-ftp –no-check-certificat -l 4 -t 2 –user-agent="Mozilla/4.0 (Windows; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)" -A "*.pdf" siteaexplorer.com
Bon, je pense que quelques petites explications s’imposent.
L’option -A « *.pdf« permet de dire de ne télécharger que les fichiers pdf
L’option -r (récursif) permet de suivre les liens inclus dans la page pour explorer les pages suivantes
L’option -l 4 détermine la profondeur de la recherche à 4 (5 par défaut)
L’option -t 2 permet de limiter à 2 le nombre d’essais en cas de téléchargement raté (20 par défaut)
L’option -nd permet de ne pas faire de dossier et de mettre tous les pdf dans le même dossier
L’option -H permet de suivre des liens à l’extérieur du site de départ
L’option –follow-ftp permet de suivre aussi les liens vers des ftp
L’option –no-check-certificat permet de s’affranchir de la vérification de certificat
Les options –random-wait –load-cookies –user-agent= »Mozilla/4.0 (Windows; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727) » permettent de se faire passer pour un navigateur web et ainsi éviter de se faire bloquer l’accès (ce qui peut arriver sur certains sites).
Source : http://aegirs.fr/?p=174
wget -rkpE <uri> est la commande pour crawler un site et recréer les liens localement.
wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://site/path/
Mieux :
wget --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=windows -c --no-parent -w 2 --random-wait -e robots=off --header="Accept: text/html" --user-agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:21.0) Gecko/20100101 Firefox/21.0" --domains mon_site.com https://www.mon_site.com
Si une identification est nécessaire
Log in to the server. This only needs to be done once.
wget --save-cookies cookies.txt \
--keep-session-cookies \
--post-data 'user=foo&password=bar' \
--delete-after \
http://server.com/auth.php
Mieux utilier "Copy as cURL" in the Network tab of Developer Tools (reload the page after opening) et remplacer -H par --header et --data par --post-data.
Now grab the page or pages we care about.
wget --load-cookies cookies.txt \
http://server.com/interesting/article.php