man wget - najciekawsze opcje ;)
- -q, --quiet
- Tryb cichy. Wyłącza wyjście Wget.
- -t liczba, --tries=liczba
- Ustawia liczbę ponawiania prób na liczbę. Dla nieskończonego ponawiania: 0
- -O plik, --output-document=plik
- Dokumenty będą zapisywane do pojedynczego pliku (jeśli podano parę - zostaną sklejone). Jeśli plik istnieje, to zostanie nadpisany. Włączenie tej opcji automatycznie ustawia liczbę prób na 1.
- -c, --continue
- Kontynuuje pobieranie częściowo ściągniętego pliku. Opcja -c wpływa tylko na wznawianie pobrań zaczętych przed bieżącym wywołaniem Wget i tylko dla tych plików, których lokalne kopie nadal istnieją. Istnieje wiele ograniczeń w stosunku do tej opcji należy jej używać z rozwagą.
- --limit-rate=wielkość
- Ogranicza prędkości pobierania do wielkość bajtów na sekundę. Na przykład --limitrate=20k ograniczy prędkość ściągania do 20KB/s, a --limitrate=1m do 1MB/s.
- --header=dodatkowy-nagłówek
- Opcja ta pozwala na określenie dodatkowego nagłówka przesyłanego serwerom HTTP. Możliwe jest określenie więcej niż jednego dodatkowego nagłówka przez kilkakrotne podanie opcji --header.
wget --header='Accept-Charset: utf-8' --header='Accept-Language: pl' http://jakas.strona.pl/
Podanie pustego łańcucha jako nagłówka kasuje wszystkie uprzednio zdefiniowane przez użytkownika nagłówki.
- --referer=url
- Zamieszcza nagłówek ‘Referer: url’ w żądaniu HTTP. Przydatne do pobierania dokumentów z dodatkowym filtrowaniem po stronie serwera (obejście blokowania leechowania obrazków).
- --user-agent=nazwa-agenta
- Wget przedstawia się serwerowi HTTP jako agent o określonej nazwie - modyfikowany nagłówek "User-Agent"
- -r, --recursive
- Włącza pobieranie rekurencyjne - czyli wraz z podkatalogami, odnośnikami.
- -l głębokość, --level=głębokość
- Podaje maksymalny poziom głębokości rekurencji. Domyślnie jest to 5.
- -p, --page-requisites
- Ta opcja powoduje, że Wget ściągnie wszystkie pliki niezbędne do poprawnego wyświetlenia danej strony HTML. Obejmuje to takie rzeczy jak grafikę i powiązane arkusze stylów - polecam użycie wraz z opcją -k. Należy zauważyć, że Wget pobierze tylko pojedynczą stronę i jej elementy. Program nie będzie podążał za odnośnikami z tej strony do zewnętrznych dokumentów. Do ściągania pojedynczej strony i wszystkich towarzyszących jej elementów (nawet jeśli leżą one na odrębnych serwerach WWW) i upewnienia się, że całość lokalnie poprawnie się wyświetla, autor oprócz -p powinno korzystać się z kilku dodatkowych opcji:
wget -E -H -k -K -p http://jakis.serwer.pl/1.html
- -A lista_akc --accept lista_akc
- -R lista_odrz --reject lista_odrz
- Jedna z opcji rekurencyjnego akceptowania/odrzucania. Podaje listę oddzielonych przecinkami przyrostków nazw plików (rozszerzeń plików) lub wzorców nazw, jakie mają być akceptowane lub odrzucane.
- -D lista_domen, --domains=lista_domen
- Ustala domeny, do których program może przechodzić. lista_domen jest listą separowaną przecinkami. Opcja ta nie włącza -H.
- --exclude-domains lista_domen
- Podaje domeny, do których program ma nie przechodzić.
- -H, --span-hosts
- Włącza przechodzenie pomiędzy hostami przy pobieraniu rekurencyjnym.
- -np, --no-parent
- Powoduje, że Wget przy pobieraniu rekurencyjnym nigdy nie wchodzi do katalogu nadrzędnego. Przydatna opcja, gdyż gwarantuje, że ściągane będą tylko pliki poniżej pewnego poziomu.
Część z poniższych porad
znalazłem, a część sam wymyśliłem ;).
wget ignorowanie pliku robots.txt (ignore robots)
wget -erobots=off http://jakas.strona.pl/
Jak zalogować się do formularza korzystając z wgeta?
wget --post-data="login=user&password=pw" http://jakas.strona.pl/form.php
wget rapidshare hack
A sam też się pobawiłem i odkryłem małego hacka. Jeżeli masz dostęp do konta premium w serwisie rapidshare, a chciałbyś pobierać z tego serwisu pliki tylko w nocy, możesz skorzystać z wgeta i dodatkowego skryptu (skryptu nie należy stosować na publicznych serwerach shellowych):
#!/bin/bash
RS_LOGIN="login_tutaj"
RS_PASS="haslo_tutaj"
# if your version of wget doesn't want to work:
# 1. goto: http://ftp.gnu.org/gnu/wget/
# 2. get 1.10.2
# 3. compile (./configure && make)
# 4. cp src/wget to your file and
# 5. change command to ./wget
for file in `cat src | grep -E '^http:\/\/rapidshare'` ; do
echo $file
wget -c --http-user=$RS_LOGIN --http-password=$RS_PASS $file
done
po uzupełnieniu zmiennych RS_LOGIN i RS_PASS i utworzeniu listy adresów w pliku src skrypt automatycznie zacznie ściągać dane.
Co oznaczają te opcje?
- --http-user=użytkownik, --http-passwd=hasło
- Określają nazwę użytkownika i hasło, które Wget prześle serwerowi HTTP. W zależności od rodzaju protokołu, Wget koduje je stosując albo uwierzytelnianie podstawowe ("basic", niechronione) albo w oparciu o skrót ("digest").
Żeby uchronić hasła przed podpatrzeniem, należy przechowywać je w pliku .wgetrc lub .netrc i, za pomocą “chmod", zapewnić tym plikom ochronę przed innymi użytkownikami.
Podsumowanie
Wget to naprawdę program o dużych możliwościach, a dzięki niewielkiemu rozmiarowi jest dostępny w niemal wszystkich możliwych dystrybucjach Linuxa.
Początkujących użytkowników może odstraszyć jego konsolowy interfejs, ale naprawdę warto się z nim zapoznać - bo nie ma lepszego programu do pobierania plików z sieci (przynajmniej ja nie znam).
0 komentarzy:
Post a Comment