Come usare Wget per scaricare siti web sul tuo PC

Funzione Url Wget di Linux

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 URL

Sostituisci “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 URL

Per rendere il tuo download wget silenzioso, aggiungi lo switch -q al tuo comando wget iniziale:

wget -q URL

Se non sei sicuro dell’uso corretto delle opzioni all’interno di wget, usa il seguente comando:

wget --help

Oltre ai siti web, puoi anche scaricare un file utilizzando wget. Ad esempio:

wget https://example.com/file.zip

Semplicemente 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.zip

Opzioni FTP

Come notato in precedenza, wget supporta anche FTP. Se specifichi semplicemente un sito FTP:

wget ftp://ftp.example.com

wget 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 URL

Come 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 URL

Ecco 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.