In quale caso dovrei preferire utilizzare Wget piuttosto che un browser?
Ho sentito che Richard Stallman lo utilizza invece di un browser per alcuni motivi di anonimato. E cosa vede il server quando ottieni i suoi file usando Wget?
In quale caso dovrei preferire utilizzare Wget piuttosto che un browser?
Ho sentito che Richard Stallman lo utilizza invece di un browser per alcuni motivi di anonimato. E cosa vede il server quando ottieni i suoi file usando Wget?
Risposte:
In genere non lo useresti mai "invece di un browser". I browser rendono l'HTML, rendono i link cliccabili (invece di dover copiare manualmente l'URL in un altro comando wget), ecc. Non c'è letteralmente alcun vantaggio nell'usare wget come essere umano. Se sei preoccupato per la privacy, ci sono milioni di modi per ripulire un browser (o potresti usare un browser meno ricco di funzionalità, come Lynx se vuoi davvero ottenere barebone senza distruggere tutta l'apparenza dell'interfaccia utente umana).
Wget viene utilizzato principalmente quando si desidera un modo rapido, economico, gestibile da script / da riga di comando per scaricare file. Quindi, ad esempio, puoi inserire wget in uno script per scaricare una pagina Web che viene aggiornata frequentemente con nuovi dati, che è qualcosa per cui un browser non può davvero essere utilizzato. Puoi utilizzare le varie opzioni di wget per eseguire la scansione e salvare automaticamente un sito Web, cosa che la maggior parte dei browser non può fare, almeno non senza estensioni.
In breve, i browser sono applicazioni per gli utenti che guardano a Internet, wget è uno strumento per macchine e utenti esperti che spostano dati su HTTP. Molto simile in ciò che fanno (estrarre file dai siti Web) ma completamente diverso nel loro uso.
Per quanto riguarda ciò che i server "vedono" quando ottieni cose con wget: tutti i client HTTP (browser, wget, curl, altre applicazioni simili) trasmettono quello che viene chiamato "User Agent", che è solo una stringa che descrive il browser (o al giorno d'oggi, descrive quali funzionalità del browser ha). Questo può essere usato per mostrare contenuti diversi a seconda del browser dell'utente (ad esempio Google cerca di non pubblicizzare Chrome a persone che già utilizzano Chrome). Alcuni sciocchi cercano di bloccare gli shenanigans degli utenti avanzati bloccando la stringa dell'agente utente di wget, ma puoi semplicemente falsificare una stringa dell'agente utente di Chrome per aggirare quello. Più spesso viene semplicemente utilizzato per le statistiche in modo da sapere quanto sono popolari i diversi browser in modo da sapere con quali testare il più accuratamente.
Se usi le funzioni di scansione di wget, il server vedrà molte richieste rapide in un ordine prevalentemente alfabetico. È un omaggio morto che stai raschiando il loro sito. Sembra completamente diverso dalla navigazione di un utente. Con un utente umano che effettua richieste in un browser, ogni richiesta di pagina è seguita da tutte le immagini su quella pagina, quindi c'è un certo ritardo e quindi c'è una richiesta per un'altra pagina casuale (o forse una stringa di pagine con uno scopo chiaro) .
Come altri hanno già detto, wget
ha il vantaggio di non essere associato a componenti aggiuntivi, cookie e cache, il che lo rende potenzialmente più stabile e sicuro. Ma i browser e in wget
realtà hanno usi normali molto diversi .
wget
è un'utilità della riga di comando destinata a recuperare il contenuto, non a presentarlo. Può essere utilizzato per recuperare e scaricare qualsiasi cosa tramite FTP, HTTP e HTTPS, inclusi tutti i tipi di file (HTML, immagini, binari, ecc.).
Per il server, l'unica differenza che vedrà è diversa a user agent
meno che non si utilizzi l' --user-agent
argomento per specificare quello di un browser. In tal caso, il server non vedrà alcuna differenza.
1) download avviati da una sceneggiatura piuttosto che da un essere umano
2) scaricare interi siti (o frammenti di siti) anziché pagine separate. (Wget può seguire automaticamente i link.)
Wget ha alcune opzioni da riga di comando per controllare ciò che il server vede e può pensare, inclusi ritardi arbitrari tra le richieste di download delle pagine. Ma se il server del sito ha una politica anti-bot, spesso perdi molto tempo e traffico prima di ottenere un risultato accettabile.
Quando si utilizza un browser è attivo qualcosa al suo interno, inclusi componenti aggiuntivi indesiderati e persino malware, mentre wget è un semplice comando che scarica roba e non fa assolutamente nient'altro.
Il browser non è necessariamente meno sicuro ma potenzialmente così.
I server "vedono" una richiesta di download, come al solito.
Il browser può registrare le tue attività nella cronologia e nei file di cache.
wget non ha memoria.
Detto questo, un browser è più comodo e non mi interessa se l'NSA scopre che ho scaricato la 4.7.2-040702-generic
scorsa settimana. Uso il mio browser per operazioni bancarie online e paypal, che è probabilmente più cruciale della maggior parte dei file che posso scaricare con wget.
Come sviluppatore che utilizza installazioni Ubuntu remote, spesso non ha molto senso installare la GUI del sistema operativo. In questo ambiente da "riga di comando", wget è uno strumento essenziale per il download di file dal Web.
Non sono nemmeno sicuro di quali, eventualmente, i browser possano essere eseguiti dal terminale.
wget
per "alcuni motivi di sicurezza"?