Grimoire-Command.es

GNU+Linux command memo

Memo_9 : Récupération sur le web

D’après l’édition 11 des travaux d’Alain Leaper, 2018-04-10
Licence GPL

1. curl : récupération sur le web

1.1. Option : -O

Placer les données reçues dans un fichier portant le même nom que la source (le chemin n’est pas pris en compte).

$ curl -O http://www.unsite.com/nom.iso (1)
1 nom.iso sera placé dans le répertoire courant

Exemple réel :

$ curl -O http://slackware.org.uk/slackware/slackware-13.1-iso/slackware-13.1-install-dvd.iso
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed
0 4118M    0 8088k    0     0   246k      0  4:44:46  0:00:32  4:44:14  251k$

1.2. Option : -C -

À utiliser en cas de coupure, pour éviter un rechargement complet.

$ curl -C - -L -O http://www.unsite.com/nom.iso (1)
1 Si l’option -L est absente on ne suis pas les redirections, mais on les télécharge.
$ curl -C - -L -O http://cdimage.debian.org/debian-cd/6.0.3/i386/iso-cd/debian-6.0.3-i386-CD-1.iso

2. wget (idem, mais en mieux ;-p)

$ wget http://www.unsite.com/nom.iso
$ wget --recursive --limit 1 http://… (1)

$ wget --recursive http://a.eu/p/ --no-directories --directory-prefix $d --accept JPG,JPEG (2)

$ wget http://a.eu/photos/{001..146}.jpg (3)

$ wget http://imgs.xkcd.com/clickdrag/{1..50}{n,s}{1..50}{w,e}.png (4)

$ wget --recursive --relative --no-parent --wait 5 --random-wait http://a.eu (5)

$ doc_crawler.py --download http://a.eu (6)
1 Download all what wget finds one link away
2 Download all the JPG or JPEG photos from a web gallery
3 Download a series of photos. Series work everywhere : cp DSCN0{753..833}.JPG img/
4 Download all the tiles from XKCD 1110 "Click and Drag" ; please don’t be rude
5 Download all a website, and avoid being banned going too fast
6 Same as above but only files are downloaded (PDF, ODT, ZIP…). More info here.

3. doc_crawler.py : récupération récursive sur le web

$ doc_crawler.py http://a.com > url.lst (1)
$ doc_crawler.py --download-files url.lst (2)
$ doc_crawler.py --download-file http://a.com/file.txt (3)
$ doc_crawler.py --accept=jpe?g$ --download --single-page --wait=3 https://a.com/a_page (4)
1 Create a url.lst file that contains the links to all PDF, ODT, DOC, ZIP… files found while exploring recursively the pointed website
2 Download all the listed files (in a second time, after you checked that the list is good)
3 Download one by one the files that failed for instance
4 Download all the photos from a unique page web gallery, all found photos are directly downloaded on the fly, the random wait between two requests is never longer than 3 seconds
5 doc_crawler.py can be downloaded here, or installed via Pypi.

4. torsocks : récupérations via TOR

Comme vu ici.

$ torsocks ssh distant-domain.com
$ torsocks wget http://foo.onion/data.bar

5. md5sum : vérification de l’intégrité d’un fichier

$ md5sum nomFichier (1)
1 Affiche la somme de contrôle à l’écran. C’est pas ce qu’il y a de plus utile !

5.1. Redirection vers un fichier de contrôle

$ md5sum nomFichier > fichCtrl (1)
1 Ce fichier (fichCtrl) contient la checkcsum suivie du nom du fichier qui l’a générée c’est évidemment la même chose qu’à l’écran, mais c’est plus commode pour la vérification.

5.2. Vérification d’un fichier à partir du fichier de contrôle créé précédemment

$ md5sum -w -c fichCtrl
nomFichier : OK (1)
1 Si c’est bien le cas

5.3. Utilisation lors d’un téléchargement

En plus du fichier à télécharger, les sites donnent en général un fichier de même nom avec une extension '.md5'. Celui-ci est utilisable en tant que fichier de contrôle, avec la commande :

$ md5sum -w -c xxxxx.md5

6. sha1sum : autre vérification de l’intégrité d’un fichier

À nouveau :

$ sha1sum nomFichier

sha256sum et sha512sum s’utilisent de la même manière.