Ecco uno dei comandi base e fondamentali che ogni utente dovrebbe conoscere: wget.
Wget non è altro che una piccola utility a riga di comando in grado di recuperare file tramite i più famosi protocolli internet come HTTP, HTTPS, FTP!
Inoltre questo tool è non interattivo, può quindi funzionare in background senza che l’utente sia sempre presente.
Con wget potrete scaricare un’intera pagina web e leggerla offline o addirittura l’intera struttura e l’intero sito che verranno salvati sul vostro HD grazie ad un processo ricorsivo. Viene rispettato il Robot Exclusion Standard (robots.txt), e la cosa bella di wget è che insisterà nello scaricare un file anche se questo è momentaneamente non disponibile a causa di qualche problema di rete fino a quando non sarà disponibile nuovamente; addirittura se il server lo supporta, si può continuare il download da dove era stato interrotto.
Wget è stato realizzato in modo robusto per supportare connessioni lente o instabili.
Vediamo ora come utilizzare wget. Se possedete Ubuntu non dovrete installarlo essendo già presente di default nel sistema ma questo vale anche per molte distro linux.
Da dire che wget è un tool stracolmo di opzioni,che permette di fare davvero tantissime cose. Oggi vi mostro come scaricare un intero sito web, in background, dando soltanto una linea di comando. La sintassi esatta è:
wget -k -r -p -D dominio.org --restrict-file-names=sistema http://www.sitoweb.org
E, adesso, capiamo cosa significano tutti gli argomenti che abbiamo dato in pasto a wget.
-k (o --convert-links):
questo argomento fa si che, alla fine del processo di download, tutti i links alle pagine siano convertiti a links relativi, in modo da permettere la navigazione offline;-r (o --recursive):
questo argomento permette il download – in gergo – di tipo ricorsivo, così da scaricare sicuramente l’intero sito web;-p (o --page-requisites):
questo argomento permette di scaricare anche ciò di cui si ha bisogno per visualizzare correttamente la pagina (fogli di stile,immagini, javascripts eccetera eccetera);-D (o --domains):
questo è un argomento importantissimo, per non ritrovarvi la macchina piena di pagine web inutili: scarica soltanto i links interni al dominio (o ai domini, separati l’un l’altro da una virgola) da voi specificati, in genere si usa quello del sito stesso;--restrict-file-names:
altro argomento importante, permette di modificare i nomi dei files così da non andare in contrasto con il sistema operativo che state usando. I possibili parametri sono unix (se dovrete visualizzare il sito su un sistema Unix) o windows (se dovrete visualizzarlo su Windows).- L’ultimo parametro, come avrete capito, è l’url del sito web che andrete a scaricare.
Se, quindi, io volessi scaricare l’intero sito http://www.chimerarevo.com, andrei a scrivere a terminale
wget -k -r -p -D chimerarevo.com --restrict-file-names=unix http://www.chimerarevo.com
Alla fine del processo, avrete bello e pronto il vostro sito web in una cartellache si chiamerà esattamente www.vostrosito.org. Qualora dovreste avere problemi con il download (se, per caso, dovesse cadervi la connessione ad esempio) potrete utilizzare il comando precedente per continuare il download, aggiungendo però anche il parametro -nc (o --no-clobber)
, che permette di non sovrascrivere i files già scaricati.
Semplice, veloce e indipendente: cosa c’è di meglio?
Fonte: http://www.chimerarevo.com/2010/06/16/wget-un-comodo-comando-da-terminale-per-scaricare-interi-siti-web/
This opera is licensed under a Creative Commons Attribuzione 2.5 Italia License.