Základní použití
wget http://www.example.org
Nejzákladnější použití - stáhne se index.html (popř. ten soubor, který se vrací na /)
wget ftp://ftp.linux.cz/pub/ROADMAP.html
Stáhne soubor ROADMAP.html pomocí protokolu ftp.
Příkazy jednoduché
wget -i soubor
Pokud máte spoustu odkazů, které chcete stáhnout, je jednodušší si je uložit do souboru a tímto příkazem říct, že se má stahovat to, co je napsáno v tomto souboru.
wget -c ftp://ftp.linux.cz/pub/ROADMAP.html
Příkaz -c říká wgetu, že má navázat stahování souboru po přerušení. Soubor se tedy nestahuje celý znovu, ale stahování se napojí na již existující část.
wget --http-user=jmeno --http-password=heslo http://www.example.org/
Příkazy --http-user a --http-password zasílají jméno a heslo pro přihlášení přes http-autentifikaci.
wget --referer=http://www.example.org/ http://www.example.org/image.gif
Příkaz --referer umožňuje poslat v hlavičce položku refereru, tedy adresu stránky, ze které se dostal prohlížeč na požadovanou stránku. Je to výhodné, pokud server sleduje referery pro blokování hot-linkingu.
wget --user-agent="Mozilla/5.0 (X11; U; Linux i686; rv:1.7.3) Gecko/20040911 Firefox/0.10" http://www.example.org
Parametr --user-agent (zkráceně -U) je samovysvětlující - posílá určeného user-agenta serveru, výhodné pro stahování např. celého webu, někdy se user-agent testuje (a Wget/1.9 jasně říká, že jde o stahovač :-)
wget --limit-rate=hodnota http://www.example.org
Velmi užitečná volba --limit-rate nastavuje maximální hodnotu rychlosti, jakou se bude stahovat. Vhodné pro zpomalení stahování na přetížených komunitních sítích, ale i pro dial-upisty. Hodnoty jsou v bajtech za sekundu, pokud chceme limitovat na kilobajty, stačí použít volbu např. takto --limit-rate=30k, čímž se nastaví limit na 30kb/s. Je dost možné, že váš wget tuto volbu mít nebude, můj z Fedora Core ve verzi GNU Wget 1.9+cvs-stable (Red Hat modified) jí má.
Příkazy komplexnější
wget -r -l 1 -k http://www.example.org/
Nastavení rekurzivního stahování (-r) s maximální hloubkou stahování (-l 1, kde 1 znamená, že se stáhne vše do 1. úrovně ze stránky, kdyby byla úroveň nastavena na 2, stáhne se vše, co je v první úrovni plus to, na co první úroveň odkazuje) s převodem odkazů pro lokální prohlížení (-k).
wget -r -l 2 -nd http://www.example.org/
Nastavení rekurzivního stahování (-r) s maximální hloubkou stahování (-l 2), ale bez tvorby adresářové struktury (-nd), všechny soubory jsou tedy uloženy do aktuálního adresáře. Možná je vhodná chvíle říct ještě několik příkazů pro práci s adresářovou strukturou a pro rekurzivní stahování:
-nH
nevytvoří se adresář se jménem serveru (zde tedy adresář www.example.org/ v aktuálním adesáři
--cut-dirs=číslo
"Odřízne" adresářovou strukturu. Předchozí příkaz zruší adresář se jménem serveru, tento příkaz z leva odřezává názvy adresářů, pokud použijeme např. wget -r -l 2 -nH --cut-dirs=2 http://www.example.org/dir1/dir2/dir3, pak se vytvoří pouze adresář dir3/.
-P adresář
Nastaví adresář, do kterého se budou stažené soubory ukládat. Defaultně je to "." - aktuální adresář.
-k (--convert-links)
Slouží pro převod odkazů v souborech, aby odkazovaly na lokální soubory, a byly vhodné pro off-line prohlížení.
-L
Stahuje pouze relativní odkazy.
-np
Stahuje pouze soubory, které jsou v adresářové struktuře na serveru hlouběji než specifikovaná adresa.
wget -r -l 2 -nc http://www.example.org/
Volba -nc (--no-clobber) má výhodné použití, pokud se přerušilo stahování např. celé web stránky. Bez tohoto parametru wget stahuje všechny soubory znovu, pokud nalezne již existující soubor, vytvoří nový s příponou o jednu větší, než je existující soubor (soubor, který již je stažen, má pořadové číslo 0, které se nezobrazuje, podruhé stažen má příponu .1, pak .2 atd.). S tímto příkazem se wget chová tak, že již stažené soubory ignoruje (pozor - nemusí být kompletní, ale přesto je ignoruje!).
wget -p http://www.example.org/
Volba -p říká wgetu, že má stáhnout stránku (v tomto případě to je index.html z http://www.example.org) a to se všemi soubory, které jsou nezbytné pro zobrazení stránky - obrázky, CSS soubory. Lze samozřejmě kombinovat i s rekurzivním stahováním.
wget -m http://www.example.org/
Příkaz -m slouží pro mirrorování celých webů. Tímto příkazem se nastaví tyto volby: -r -N -l inf -nr, tedy rekurzivní stahování (-r), nastavení timestampů souboru, aby souhlasil s tím na serveru (-N), nekonečnou hloubku stahování (-l inf).
wget -A pdf -r -l 1 http://www.magtypo.cz
A zde bych rád ukázal velmi užitečný příkaz -A a -R. Příkaz -A pripona1,pripona2,... říká, že se mají stáhnout pouze soubory s určenou příponou. V našem příkladu chceme stáhnout časopisy Typo v PDF formátu, které tam jsou volně ke stažení. Vždy je však stažen soubor index.html (nebo ten, na který ukazujete), aby bylo možné zjistit, které soubory se mají stahovat. Opačným příkazem je -R pripona1,pripona2,..., který naopak říká, že soubory s touto příponou se stahovat nemají.
wget -w 10 --random-wait -m http://www.example.org/
Při stahování třeba celého mirroru se může hodit nastavit náhodné časy přístupů na server, protože některé to mohou testovat a přístup zakázat. Příkazem -w čekání se nastavuje čas v sekundách a --random-wait říká, že čas mezi přístupy bude z intervalu 0 až 2*čekání.
Závěrem
Doufám,že tento návod pomůže ke kvalitnějšímu a radostnějšímu přesunu obsahu Internetu na vaše stagigabajtové disky :-)
Vycházel jsem ze svých zkušeností z používání wgetu, dále také z manuálu, manuálové stránky programu a také wget --help. Rozhodně doporučuji podrobnější prozkoumání manuálu, protože jsem např. víceméně vynechal práci s FTP.