Scarica un intero sito con wget anche se ci sono restrizioni

Cos'è wget?

Niente di meglio di wikipedia per spiegare in cosa consiste questo strumento:

GNU Wget è uno strumento software gratuito che consente il download di contenuti dai server web in modo semplice. Il suo nome deriva da World Wide Web (w), e da "get" (in inglese get), questo significa: get dal WWW.

Attualmente supporta i download utilizzando i protocolli HTTP, HTTPS e FTP.

Tra le caratteristiche più importanti che offre wget c'è la possibilità di un facile download ricorsivo di mirror complessi, conversione di link per visualizzare localmente il contenuto HTML, supporto per proxy ...

De wget Ne abbiamo già parlato abbastanza qui a DesdeLinux. Infatti ya Avevamo visto come scaricare un sito completo con wget, il problema è che oggigiorno gli amministratori non sempre permettono a nessuno di scaricare tutto il proprio sito proprio così, non è qualcosa che gli piace molto ... e, ovviamente, ho capito. Il sito è lì su Internet per consultarlo, il lettore accede ai contenuti di interesse e l'amministratore del sito ne beneficia economicamente bene (attraverso la pubblicità), come visite, ecc. Se il lettore scarica il sito sul suo computer, non dovrà andare online per consultare un post precedente.

Scaricare un sito con wget è semplice come:

wget -r -k http://www.sitio.com

  • -r : Indica che verrà scaricato l'intero sito Web.
  • -k : Indica che i collegamenti del sito scaricato verranno convertiti per poterli visualizzare su computer senza Internet.

Ora, le cose si complicano quando l'amministratore del sito ci rende difficile ...

Quali restrizioni potrebbero esistere?

Il più comune che abbiamo riscontrato è che l'accesso al sito è consentito solo se si dispone di un agente utente riconosciuto. In altre parole, il sito riconoscerà che lo UserAgent che sta scaricando tante pagine non è uno di quelli "normali" e quindi chiuderà l'accesso.

Inoltre tramite il file robots.txt puoi specificare che wget (come un mucchio di app più simili) Non sarai in grado di scaricare come desidera il cliente, beh ... beh, l'amministratore del sito lo vuole, punto 😀

Come aggirare queste restrizioni?

Per il primo caso stabiliremo un UserAgent su wget, possiamo farlo con l'opzione –User-agent, qui ti mostro come:

wget --user-agent = "Mozilla / 5.0 (X11; Linux amd64; rv: 32.0b4) Gecko / 20140804164216 ArchLinux KDE Firefox / 32.0b4" -r http://www.site.com -k

Ora, per aggirare il file robots.txt, escludi quel file, cioè lascia che wget scarichi il sito e non importa cosa dice il file robots.txt:

wget --user-agent = "Mozilla / 5.0 (X11; Linux amd64; rv: 32.0b4) Gecko / 20140804164216 ArchLinux KDE Firefox / 32.0b4" -r http://www.site.com -k -e robots = off

Ora ... ci sono altre opzioni o parametri che possiamo utilizzare per ingannare ancora di più il sito, ad esempio indicare che entriamo nel sito da Google, qui lascio l'ultima riga con tutto:

wget --header = "Accept: text / html" --user-agent = "Mozilla / 5.0 (X11; Linux amd64; rv: 32.0b4) Gecko / 20140804164216 ArchLinux KDE Firefox / 32.0b4" --referer = http: / /www.google.com -r http://www.site.com -e robots = off -k

Non è obbligatorio che il sito contenga http: // www all'inizio, può essere uno direttamente http: // come ad esempio questo Geometria Dash

Va bene farlo?

Dipende ... devi sempre vederlo da entrambi i punti di vista, dall'amministratore del sito ma anche dal lettore.

Da un lato, come amministratore, non vorrei che stessero prendendo una copia HTML del mio sito proprio così, è qui online non per piacere, per il divertimento di tutti ... il nostro obiettivo è avere contenuti interessanti disponibile, che puoi imparare.

Ma d'altra parte ... ci sono utenti che non hanno internet a casa, che vorrebbero avere l'intera sezione Tutorial che abbiamo messo qui ... io mi metto al loro posto (in effetti lo sono, perché a casa non ho internet) e non è piacevole stare al computer, avere un problema o voler fare qualcosa e non poterlo fare perché non si ha accesso alla rete delle reti.

Che sia giusto o sbagliato dipende da ogni amministratore, dalla realtà di ognuno ... quello che mi preoccuperebbe di più sarebbe il consumo di risorse che wget causa sul server, ma con un buon sistema di cache dovrebbe essere sufficiente per il server no soffrire.

Internet

Conclusioni

Ti chiedo di non avviare il download adesso. DesdeLinux HAHAHA!! Ad esempio, la mia ragazza mi ha chiesto di scaricare alcuni Trucchi per Geometry Dash (qualcosa come Trucchi per Geometry Dash), non scaricherò l'intero sito web, ma aprirò semplicemente la pagina desiderata e la salverò in PDF o HTML o qualcosa del genere, questo è cosa ti consiglierei.

Se hai qualche tutorial DesdeLinux che vuoi salvare, salvalo nei tuoi segnalibri, come HTML o PDF... ma, per uno o due tutorial non è necessario generare traffico e consumo eccessivi sul server 😉

Beh niente, spero sia utile ... Un saluto


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   eliotime3000 suddetto

    Suggerimento interessante. Non sapevo che potessi farlo.

  2.   Emmanuel suddetto

    È esattamente quello che mi era successo due volte, e certamente è stato per questo. Tuttavia, era per motivi di velocità (casa o università) che volevo accedere ai contenuti in quel modo. 😛
    Grazie per il consiglio. Saluti.

  3.   Gerardo suddetto

    Ottimo per quelli di noi che non hanno Internet. Certamente buoni tutorial.

  4.   Quinotto suddetto

    Articolo molto interessante.
    Domanda: come può essere fatto per i siti https?
    Dove è richiesta l'autenticazione tramite username e password e inoltre gran parte del sito è scritta in java?
    Saluti e ringraziamenti

  5.   Gelibassio suddetto

    e dove vengono salvati i download?

    1.    Gelibassio suddetto

      Mi rispondo: nella cartella personale. Ma ora la domanda è ... puoi in qualche modo indicare dove scaricare il contenuto?

      graciass

      1.    Daniel suddetto

        Immagino che prima accedi alla cartella in cui vuoi salvarlo e poi esegui wget

  6.   cristian suddetto

    query ... e ci sarà qualcosa del genere per "clonare" un database

  7.   xphx suddetto

    Sono curioso, ricevi denaro per l'inserimento di quei link a siti web di micro-nicchie?

  8.   Ruperto suddetto

    Beato wget ... è così che ho scaricato un sacco di porno nei miei tempi di maiale xD

  9.   lunare suddetto

    Bel consiglio. Grazie

  10.   NULL suddetto

    Molto bene, mi è piaciuta la parte relativa all'elusione delle restrizioni.

  11.   Franz suddetto

    Grazie per quella gemma:
    wget –header = »Accetta: text / html» –user-agent = »Mozilla / 5.0 (X11; Linux i686; rv: 31) Gecko / 20100101 Firefox / 31 ″ –referer = http: //www.google.com - r https://launchpad.net/~linux-libre/+archive/ubuntu/rt-ppa/+files/linux-image-3.6.11-gnu-3-generic_3.6.11-gnu-3.rt25.precise1_i386.deb -k -e robots = off

    wget –header = »Accetta: text / html» –user-agent = »Mozilla / 5.0 (X11; Linux i686; rv: 31) Gecko / 20100101 Firefox / 31 ″ –referer = http: //www.google.com - r https://launchpad.net/~linux-libre/+archive/ubuntu/rt-ppa/+files/linux-headers-3.6.11-gnu-3_3.6.11-gnu-3.rt25.precise1_all.deb -k -e robots = off

    wget –header = »Accetta: text / html» –user-agent = »Mozilla / 5.0 (X11; Linux i686; rv: 31) Gecko / 20100101 Firefox / 31 ″ –referer = http: //www.google.com - r https://launchpad.net/~linux-libre/+archive/ubuntu/rt-ppa/+files/linux-headers-3.6.11-gnu-3-generic_3.6.11-gnu-3.rt25.precise1_i386.deb -k -e robots = off

  12.   Palomares suddetto

    Molto interessante.

  13.   Oscar Mezza suddetto

    wget è uno di quegli strumenti ultra potenti, con un po 'di programmazione da terminale puoi creare il tuo robot in stile google per iniziare a scaricare il contenuto delle pagine e memorizzarlo nel tuo database e fare quello che vuoi in seguito con quei dati.

  14.   Carlos g suddetto

    Trovo questo strumento molto interessante, non avevo mai prestato attenzione ai suoi parametri, vorrei sapere se è possibile scaricare contenuti da una pagina «X» a cui devi essere loggato per entrare, e se è da qualche parte su questo sito «X" c'è un video, lo scaricerei anche se appartiene a un CDN diverso dal sito "X"?

    Se ciò fosse possibile, come protegge un sito da un tale strumento?

    Saluti!

  15.   Erick zanardi suddetto

    Buona notte:

    Ti scrivo per un consulto. Ho scaricato con l'ultimo comando di questo articolo, quasi 300MB di informazioni .. file .swf, .js, .html, dalla pagina http://www.netacad.com/es con il mio utente da un piccolo corso che ho fatto a Maracay, in Venezuela.

    La mia domanda è ... Sarà possibile vedere le animazioni in flash?

    Entro in "Configurazione globale" e le opzioni che mostra nessuna mi permettono di configurare.

    Apprezzo qualsiasi risposta.

    Grazie in anticipo!

    1.    ADX suddetto

      Ho gli stessi dettagli, i file .swf vengono scaricati a metà, se riesci a saltarli condividimi informazioni. Quello che ho fatto l'ultima volta è stato usare uno spider per ottenere tutti i link netacad ma ancora il .swf non finisce il download come dovrebbe

  16.   alexander.hernandez suddetto

    molto buona !!! Grazie.

  17.   Ana suddetto

    Ciao, grazie per il tuo tuto. Provo a scaricare un blog in cui sono invitato, con una password, in modo da poterlo leggere da casa offline. Uso questo programma e ovviamente ho la password del blog (wordpress), ma non so come procedere. Potresti mostrarmi?
    Grazie in anticipo e cordiali saluti!

  18.   Fran suddetto

    che bel post !!!

  19.   Santiago suddetto

    ottimo mi ha servito molto

  20.   Fran suddetto

    Ho effettuato l'accesso a un sito Web con video vimeo incorporati e non è possibile scaricarli .. sembra che vimeo li abbia protetti. Qualche idea??