Come usare Wget per scaricare siti web sul tuo PC

Ti sei mai chiesto se ci fosse un modo per scaricare un sito web senza un browser? Sei fortunato. Con la potenza della riga di comando di Linux, tutto è possibile. Ci sono diversi metodi per completare questo compito, ma ci concentreremo su wget in questo articolo.
Cos’è wget?
wget è un’utilità da riga di comando GNU per recuperare contenuti dai server web. Come downloader, wget è molto potente di per sé. wget è in grado di lavorare con più protocolli, come HTTP, HTTPS e FTP. Altre capacità dell’utilità wget includono:
- capacità di funzionare silenziosamente o in background
- integrato con script Linux o lavori CRON
- può eseguire più download contemporaneamente
- scarica file che richiedono una password
Perché wget?
Sebbene ci siano una moltitudine di strumenti che possono eseguire attività sui siti web, wget consente un ampio raggio d’azione. Dà all’utente la possibilità di funzionare senza un browser web:
- scaricando una copia completa di un sito web
- scaricando un file specifico da un sito web
- automatizzando il recupero di un file su richiesta
- ottenendo un documento da un portale di autenticazione
wget è anche integrato nella maggior parte delle distribuzioni Linux, quindi è disponibile fin dall’inizio e non è necessaria alcuna installazione ulteriore.
Nozioni di base su wget
Iniziare con wget è abbastanza semplice. Prima di tutto, apri un Terminale Linux.
Una volta aperta una finestra del terminale, puoi eseguire wget come mostrato di seguito:
wget URLSostituisci “URL” con l’URL esatto del sito web.
Per riprendere un file scaricato parzialmente, utilizza un switch -c nel tuo comando come segue:
wget -c URLPer rendere il tuo download wget silenzioso, aggiungi lo switch -q al tuo comando wget iniziale:
wget -q URLSe non sei sicuro dell’uso corretto delle opzioni all’interno di wget, usa il seguente comando:
wget --helpOltre ai siti web, puoi anche scaricare un file utilizzando wget. Ad esempio:
wget https://example.com/file.zipSemplicemente prenderà il file e lo salverà nella directory corrente.
Se desideri salvare con un nome di file diverso o in una posizione diversa, utilizza il flag -O.
wget https://example.com/file.zip -O ~/Documents/my_downloaded_file.zipOpzioni FTP
Come notato in precedenza, wget supporta anche FTP. Se specifichi semplicemente un sito FTP:
wget ftp://ftp.example.comwget presumerà che tu voglia un accesso anonimo. In alternativa, puoi specificare manualmente cose come nome utente e password con i seguenti flag:
--ftp-user=USER: specifica il nome utente per l’accesso--ftp-password=PASS: specifica la password--no-passive-ftp: disabilita la modalità di trasferimento passivo
Timeout, Riprova e Download Falliti
Infine, wget viene fornito con diverse opzioni relative ai problemi di connessione al server e ai timeout. Non tutti i fallimenti possono essere gestiti, ovviamente, ma i seguenti flag sono tutti destinati ad aiutare a gestire i problemi del server:
--tries=NUMBER: specifica il numero di volte per riprovare il download--retry-connrefused: riprova il download anche se la connessione viene rifiutata dal server--timeout=SECONDS: impostazione globale – quanto tempo aspettare prima dei timeout--wait=SECONDS: quanto tempo aspettare tra download riusciti (se ripetuti)
Chi userebbe wget?
Leggendo questo post, potresti pensare: “Questo sembra complicato e molto più difficile che usare un browser web”, ma chiunque può trovare un uso per questa utilità, sia come amministratore di sistema che come programmatore. Di seguito ci sono due esempi di come utilizzo questo comando durante la mia giornata, con il mio ruolo che a volte cambia.
Rende il mio lavoro come ricercatore di sicurezza più facile perché posso programmare questo comando per scaricare più siti web contemporaneamente. Posso farlo creando un file di testo (utilizzando qualsiasi editor di testo) che contiene un numero di URL in un elenco (un URL per riga). Eseguendo il comando qui sotto con lo switch -i, wget scaricherà ogni sito web nell’elenco.
wget -i download_file_name URLCome amministratore di sistema, posso ottenere documenti da posizioni protette da password con facilità. Questo potrebbe non aiutarti altrettanto offline, ma eseguendo wget ti consente di aggiungere credenziali a un sito.
wget --user=user_id --password=user_password URLEcco fatto! È stato difficile come pensavi? Essere in grado di automatizzare le tue azioni con wget ti farà risparmiare tempo e ti darà anche la possibilità di lavorare offline. Cosa hai da perdere?
Lascia un commento qui sotto e facci sapere se hai trovato utile questo articolo.