Ladda ner en hel webbplats med wget även om det finns begränsningar

Vad är wget?

Inget bättre än wikipedia för att förklara vad detta verktyg består av:

GNU Wget är ett gratis programverktyg som gör det möjligt att ladda ner innehåll från webbservrar på ett enkelt sätt. Dess namn härstammar från World Wide Web (w) och från "get" (på engelska get) betyder detta: get from the WWW.

För närvarande stöder den nedladdningar med HTTP-, HTTPS- och FTP-protokoll.

Bland de mest framstående funktionerna som den erbjuder wget det finns möjlighet till enkel nedladdning av komplexa speglar på ett rekursivt sätt, konvertering av länkar för att visa HTML-innehåll lokalt, stöd för proxyservrar...

De wget Vi har redan pratat tillräckligt här kl DesdeLinux. Faktiskt ya Vi hade sett hur man laddar ner en komplett webbplats med wget, problemet är att administratörer idag inte alltid låter någon ladda ner hela sin webbplats precis så, det är inte något som de verkligen gillar ... och självklart förstår jag. Webbplatsen finns där på Internet för att konsultera den, läsaren får tillgång till innehåll av intresse och webbplatsadministratören gynnas väl ekonomiskt (av reklam), som vid besök etc. Om läsaren laddar ner webbplatsen till sin dator behöver han inte gå online för att konsultera ett tidigare inlägg.

Att ladda ner en webbplats med wget är så enkelt som:

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

  • -r : Detta indikerar att hela webbplatsen kommer att laddas ner.
  • -k : Detta indikerar att länkarna till den nedladdade webbplatsen kommer att konverteras för att visas på datorer utan internet.

Nu blir saker och ting komplicerade när webbplatsadministratören gör det svårt för oss ...

Vilka begränsningar kan finnas?

Det vanligaste vi kunde hitta är att åtkomst till webbplatsen endast är tillåten om du har en erkänd UserAgent. Med andra ord kommer webbplatsen att erkänna att UserAgent som laddar ner så många sidor inte är en av de "normala" och därför stänger åtkomst.

Även genom robots.txt-filen kan du ange den wget (som en massa fler liknande appar) Du kommer inte att kunna ladda ner som klienten önskar, ja ... väl, webbplatsadministratören vill ha det, period 😀

Hur kringgår man dessa begränsningar?

För det första fallet skapar vi en UserAgent att wget, vi kan göra detta med alternativet –Användaragent, här visar jag dig hur:

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

För att komma runt robots.txt, exkludera bara den filen, det vill säga, låt wget ladda ner webbplatsen och bryr dig inte om vad robots.txt säger:

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 = av

Nu ... det finns andra alternativ eller parametrar som vi kan använda för att lura webbplatsen ännu mer, till exempel indikerar att vi går in på webbplatsen från Google, här lämnar jag den sista raden med allt:

wget --header = "Acceptera: 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 robotar = off -k

Det är inte obligatoriskt att webbplatsen innehåller http: // www i början, det kan vara en direkt http: // som till exempel den här geometri Dash

Är det ok att göra detta?

Det beror på ... du måste alltid se det från båda synvinklarna, från webbplatsadministratören men också från läsaren.

Å ena sidan, som administratör, skulle jag inte vilja att de tar en HTML-kopia av min webbplats precis så, det är här online inte för nöje, för att njuta av alla ... vårt mål är att ha intressant innehåll tillgängligt för dig, som du kan lära dig.

Men å andra sidan ... det finns användare som inte har internet hemma, som vill ha hela avsnittet Tutorials som vi har lagt här ... Jag placerade mig själv på deras plats (det är jag faktiskt, för hemma har jag inte internet) och det är inte trevligt att vara på datorn, ha problem eller vill göra något och inte kunna eftersom du inte har tillgång till nätverket av nätverk.

Oavsett om det är rätt eller fel är det upp till varje administratör, var och en är verklighet ... det som mest berör mig skulle vara den resursförbrukning som wget orsakar på servern, men med ett bra cachesystem borde det vara tillräckligt för servern lider inte.

Internet

Slutsatser

Jag ber dig att inte börja ladda ner nu. DesdeLinux HA HA HA!! Till exempel, min flickvän bad mig att ladda ner några Geometry Dash Cheats (något liknande Geometry Dash Cheats), jag kommer inte att ladda ner hela webbplatsen, utan jag kommer bara att öppna den önskade sidan och spara den i PDF eller HTML eller något, det här är vad jag skulle rekommendera dig.

Om du har någon tutorial DesdeLinux som du vill spara, spara det i dina bokmärken, som HTML eller PDF... men för en eller två tutorials är det inte nödvändigt att generera överdriven trafik och konsumtion på servern 😉

Nåväl ingenting, jag hoppas att det är användbart ... Hälsningar


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   eliotime3000 sade

    Intressant tips. Jag visste inte att du kunde göra det.

  2.   emmanuel sade

    Det är uttryckligen vad som hänt mig två gånger, och det var verkligen på grund av det. Men det var av hastighetsskäl (hemma mot universitet) som jag ville komma åt innehåll på det sättet. 😛
    Tack för rådet. Hälsningar.

  3.   gerardo sade

    Perfekt för de av oss som inte har internet. Visst bra handledning.

  4.   Quinotto sade

    Mycket intressant artikel.
    Fråga: hur kan det göras för https-webbplatser?
    Var krävs det att autentisera med användarnamn och lösenord och även en stor del av webbplatsen är skriven i java?
    Hälsningar och tack

  5.   Gel kalium sade

    och var sparas nedladdningarna?

    1.    Gel kalium sade

      Jag svarar mig själv: i den personliga mappen. Men nu är frågan ... kan du på något sätt berätta för honom var du ska ladda ner innehållet?

      graciass

      1.    Daniel sade

        Jag antar att du först öppnar mappen där du vill spara den och sedan kör du wget

  6.   cristian sade

    fråga ... och det kommer att finnas något liknande detta för att "klona" en databas

  7.   xphnx sade

    Jag är nyfiken, får du pengar för att placera dessa länkar till mikro-nischer webbplatser?

  8.   Rupert sade

    Välsignad wget ... så laddade jag ner mycket porr under mina grisdagar xD

  9.   månig sade

    bra tips. tack

  10.   NULL sade

    Mycket bra, jag gillade delen om kringgående av begränsningarna.

  11.   Franz sade

    Tack för den pärlan:
    wget –header = »Acceptera: 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 robotar = av

    wget –header = »Acceptera: 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 robotar = av

    wget –header = »Acceptera: 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 robotar = av

  12.   Palomares sade

    Mycket intressant.

  13.   oscar meza sade

    wget är ett av de extremt kraftfulla verktygen, med lite terminalprogrammering kan du skapa din egen robot i Google-stil för att börja ladda ner innehållet på sidorna och lagra den i din egen databas och göra vad du vill senare med den informationen.

  14.   Carlos G. sade

    Jag tycker att det här verktyget är väldigt intressant, jag har aldrig varit uppmärksam på dess parametrar, jag skulle vilja veta om det är möjligt att ladda ner innehåll från en «X» -sida där du måste vara inloggad för att komma in och om det finns någonstans på denna webbplats X »finns det någon video, skulle jag också ladda ner den även om den tillhör en annan CDN än« X »-sidan?

    Om detta var möjligt, hur skyddar en webbplats mot ett sådant verktyg?

    Hälsningar!

  15.   Erick zanardi sade

    Godnatt:

    Jag skriver till dig för en konsultation. Jag laddade ner med det sista kommandot i den här artikeln, nästan 300 MB information .. filer .swf, .js, .html, från sidan http://www.netacad.com/es med min användare från en liten kurs som jag gjorde i Maracay, Venezuela.

    Min fråga är ... Kommer det att bli möjligt att se flashanimationerna?

    Jag går in i "Global Configuration" och de alternativ som den inte visar tillåter mig att konfigurera.

    Jag uppskattar alla svar.

    Tack på förhand!

    1.    ADX sade

      Jag har samma detalj, .swf laddas ner hälften, om du lyckas hoppa över den, dela mig med info. Vad jag gjorde förra gången var att använda en spindel för att få alla netacad-länkar men ändå laddar inte ned .swf ned som det borde

  16.   alexander.hernandez sade

    mycket bra !!! tack.

  17.   Ana sade

    Hej, tack för din tuto. Jag försöker ladda ner en blogg där jag är inbjuden, med ett lösenord, så att jag kan läsa den hemifrån utan anslutning. Jag använder det här programmet och jag har självklart lösenordet för bloggen (wordpress), men jag vet inte hur jag ska gå vidare. Skulle du kunna visa mig?
    Tack på förhand och vänliga hälsningar!

  18.   Fran sade

    vad ett bra inlägg !!!

  19.   Santiago sade

    utmärkt det har tjänat mig mycket

  20.   Fran sade

    Jag är inloggad på en webbplats med inbäddade vimeovideor och det finns inget sätt för dem att laddas ner .. det verkar som om vimeo skyddar dem. Några idéer??