Jak stahovat webové stránky a soubory pomocí wget

Nástroj wget stahuje webové stránky, soubory a obrázky z webu pomocí příkazového řádku systému Linux. Ke stažení z webu můžete použít jeden příkaz wget nebo nastavit vstupní soubor pro stahování více souborů na více webů. Podle ruční stránky lze wget použít, i když se uživatel ze systému odhlásil. K tomu použijte příkaz nohup.


Vlastnosti příkazu wget

Celé weby si můžete stáhnout pomocí wget, a převést odkazy tak, aby odkazovaly na místní zdroje, abyste mohli prohlížet webové stránky offline. Obslužný program wget také zkusí stáhnout stahování, když připojení klesne a obnoví se od místa, kde skončilo, pokud je to možné, po obnovení připojení.

Další funkce wget jsou následující:

  • Stahujte soubory pomocí HTTP, HTTPS a FTP.
  • Obnovit stahování.
  • Převeďte absolutní odkazy ve stažených webových stránkách na relativní adresy URL, aby bylo možné webové stránky prohlížet offline.
  • Podporuje HTTP proxy a cookies.
  • Podporuje trvalé připojení HTTP.
  • Může běžet na pozadí, i když nejste přihlášeni.
  • Funguje na Linuxu a Windows.

Jak stáhnout web pomocí wget

V této příručce se naučíte, jak stáhnout tento blog s Linuxem:

wget www.ever

Než začnete, vytvořte ve svém počítači složku pomocí příkazu mkdir a poté se přesuňte do složky pomocí příkazu cd.

Například:

mkdir EverydayLinuxuser
cd EverydayLinuxuser
wget www.ever

Výsledkem je jediný soubor index.html, který obsahuje obsah stažený z Googlu. Obrázky a šablony stylů jsou uchovávány na Googlu.

Chcete-li stáhnout celý web a všechny stránky, použijte následující příkaz:

wget -r www.ever

Tím se stránky rekurzivně stáhnou až do hloubky maximálně 5 úrovní. Pět úrovní hluboko nemusí stačit k získání všeho z webu. Použijte -l přepněte a nastavte počet úrovní, na které chcete přejít, následujícím způsobem:

wget -r -l10 www.ever

Pokud chcete nekonečnou rekurzi, použijte následující:

wget -r -l inf www.ever

Můžete také vyměnit inf s 0, což znamená totéž.

Je tu ještě jeden problém. Můžete získat všechny stránky místně, ale odkazy na těchto stránkách směřují na původní místo. Není možné místně klikat mezi odkazy na stránkách.

Chcete-li tento problém vyřešit, použijte -k přepnutím převeďte odkazy na stránkách tak, aby odkazovaly na lokálně stažený ekvivalent, a to následovně:

wget -r -k www.ever

Pokud chcete získat úplné zrcadlo webu, použijte následující přepínač, který vás zbaví nutnosti používat -r, -k, a -l přepínače.

wget -m www.ever

Pokud máte web, můžete provést úplnou zálohu pomocí tohoto jednoduchého příkazu.


Spusťte wget jako příkaz na pozadí

Můžete spustit wget jako příkaz na pozadí, takže budete moci pokračovat v práci v okně terminálu při stahování souborů. Použijte následující příkaz:

wget -b www.ever

Můžete kombinovat přepínače. Chcete-li spustit příkaz wget na pozadí při zrcadlení webu, použijte následující příkaz:

wget -b -m www.ever

Toto můžete dále zjednodušit následujícím způsobem:

wget -bm www.ever


Přihlášení

Pokud spustíte příkaz wget na pozadí, nevidíte žádné normální zprávy, které odesílá na obrazovku. Chcete-li tyto zprávy odeslat do souboru protokolu, abyste mohli kdykoli zkontrolovat pokrok, použijte příkaz tail.

Chcete-li odeslat informace z příkazu wget do souboru protokolu, použijte následující příkaz:

wget -o / cesta / k / mylogfile www.ever

Opakem je nevyžadovat vůbec žádné protokolování a žádný výstup na obrazovku. Chcete-li vynechat veškerý výstup, použijte následující příkaz:

wget -q www.ever

Stahujte z více webů

Můžete nastavit vstupní soubor ke stažení z mnoha různých webů. Otevřete soubor pomocí oblíbeného editoru nebo příkazu cat a na každém řádku souboru zobrazte seznam webů nebo odkazů ke stažení. Uložte soubor a poté spusťte následující příkaz wget:

wget -i /

Kromě zálohování vašeho webu nebo hledání něčeho ke stažení pro čtení offline je nepravděpodobné, že si budete chtít stáhnout celý web. Je pravděpodobnější, že si stáhnete jednu adresu URL s obrázky nebo si stáhnete soubory, jako jsou soubory ZIP, soubory ISO nebo soubory obrázků.

S ohledem na to nemusíte do vstupního souboru zadávat následující údaje, protože je časově náročné:

  • http://www.myfileserver.com/file1.zip
  • http://www.myfileserver.com/file2.zip
  • http://www.myfileserver.com/file3.zip

Pokud víte, že základní adresa URL je stejná, zadejte ve vstupním souboru následující:

  • file1.zip
  • file2.zip
  • file3.zip

Poté můžete zadat základní adresu URL jako součást příkazu wget, a to následovně:

wget -B http://www.myfileserver.com -i /

Opakujte možnosti

Pokud nastavíte frontu souborů ke stažení ve vstupním souboru a necháte počítač spuštěný, aby se soubory stáhly, může se vstupní soubor zaseknout, když jste pryč, a zkusit stáhnout obsah. Počet opakování můžete určit pomocí následujícího přepínače:

wget -t 10 -i /

Použijte výše uvedený příkaz ve spojení s -T přepněte a zadejte časový limit v sekundách, a to následovně:

wget -t 10 -T 10 -i /

Výše uvedený příkaz se pokusí 10krát a připojí se na 10 sekund pro každý odkaz v souboru.

Je to také nepohodlné, když stáhnete 75% souboru 4 gigabajty na pomalé širokopásmové připojení, jen aby připojení vypadlo. Chcete-li použít wget k pokusu o zastavení stahování, použijte následující příkaz:

wget -c www.myfileser

Pokud kladete server, hostiteli se to nemusí líbit a může blokovat nebo zabít vaše požadavky. Můžete určit dobu čekání a určit, jak dlouho mezi jednotlivými načítáními čekat, a to následovně:

wget -w 60 -i /

Výše uvedený příkaz čeká 60 sekund mezi každým stažením. To je užitečné, pokud stahujete více souborů z jednoho zdroje.

Někteří hostitelé webu mohou zjistit frekvenci a blokovat vás. Čekací dobu můžete nastavit náhodně, aby vypadala, že nepoužíváte program, a to následovně:

wget --random-počkat -i /

Chraňte limity stahování

Mnoho poskytovatelů internetových služeb uplatňuje limity stahování pro použití širokopásmového připojení, zejména pro ty, kteří žijí mimo město. Možná budete chtít přidat kvótu, abyste nepřekročili limit stahování. Můžete to udělat následujícím způsobem:

wget -q 100m -i /

Společnost -q příkaz nebude fungovat s jediným souborem. Pokud stáhnete soubor o velikosti 2 gigabajty, použijte -q 1000m nezastaví stahování souboru.

Kvóta se použije pouze při rekurzivním stahování z webu nebo při použití vstupního souboru.

Projděte zabezpečením

Některé weby vyžadují přístup k obsahu, který chcete stáhnout, pro přihlášení. Pomocí následujících přepínačů zadejte uživatelské jméno a heslo.

wget --user = vaše uživatelské jméno - heslo

V systému pro více uživatelů, když někdo spustí ps příkaz, uvidí vaše uživatelské jméno a heslo.

Další možnosti stahování

Ve výchozím nastavení -r přepínač rekurzivně stáhne obsah a vytvoří adresáře, jak to jde. Chcete-li získat všechny soubory ke stažení do jedné složky, použijte následující přepínač:

Opakem je vynucení vytváření adresářů, čehož lze dosáhnout pomocí následujícího příkazu:

Jak stahovat určité typy souborů

Chcete-li stáhnout rekurzivně z webu, ale chcete stáhnout pouze určitý typ souboru, například MP3 nebo obrázek, například PNG, použijte následující syntaxi:

wget -A &

Opakem je ignorování určitých souborů. Možná nechcete stahovat spustitelné soubory. V tomto případě použijte následující syntaxi:

wget -R &

Cliget

Existuje doplněk Firefoxu s názvem cliget. Postup přidání do prohlížeče Firefox:

  1. Navštivte https://addons.mozilla.org/en-US/firefox/addon/cliget/ a klikněte na přidat do Firefoxu tlačítko.

  2. Klepněte na tlačítko instalovat Jakmile se zobrazí, a poté restartujte Firefox.

  3. Chcete-li použít cliget, navštivte stránku nebo soubor, který chcete stáhnout, a klikněte pravým tlačítkem. Zobrazí se kontextová nabídka s názvem cliget a existují možnosti kopírovat do wget a zkopírujte do zvlnění.

  4. Klepněte na tlačítko zkopírovat do wget možnost, otevřete okno terminálu, klepněte pravým tlačítkem a vyberte pasta. Do okna je vložen příslušný příkaz wget.

To vám ušetří nutnost psát příkaz sami.

Shrnutí

Příkaz wget má řadu možností a přepínačů. Chcete-li si přečíst stránku manuálu pro wget, zadejte do okna terminálu následující:

muž wget

#goog-gt-tt {display:none !important;}.goog-te-banner-frame {display:none !important;}.goog-te-menu-value:hover {text-decoration:none !important;}body {top:0 !important;}#gtranslate_element {display:none!important;}

var gt_not_translated_list = ["wget www.ever","wget -r www.ever","wget -r -l10 www.ever","wget -r -l inf www.ever","wget -r -k www.ever","wget -m www.ever","wget -b www.ever","wget -b -m www.ever","wget -bm www.ever","wget -q www.ever","wget -i /","file1.zip","file2.zip","file3.zip","wget -B http://www.myfileserver.com -i /","wget -t 10 -i /","wget -t 10 -T 10 -i /","wget -c www.myfileser","wget -w 60 -i /","wget -q 100m -i /","Cliget"];
document.cookie = "googtrans=/auto/cs; domain=.balogs.xyz";
document.cookie = "googtrans=/auto/cs";
function GTranslateElementInit() {new google.translate.TranslateElement({pageLanguage: 'auto',layout: google.translate.TranslateElement.InlineLayout.SIMPLE,autoDisplay: false,multilanguagePage: true}, 'gtranslate_element');}