Wget jest również w stanie pobrać całą witrynę. Ale ponieważ może to spowodować duże obciążenie serwera, wget będzie przestrzegał pliku robots.txt.
wget -r -p http://www.example.com
Parametr -p mówi wget, aby uwzględnić wszystkie pliki, w tym obrazy. Oznacza to, że wszystkie pliki HTML będą wyglądały jak powinny.
A co jeśli nie chcesz, aby Wget był posłuszny plikowi robots.txt? Można po prostu dodać -E robotów = off do polecenia jak poniżej:
wget -r -p -e robots=off http://www.example.com
Jak wiele stron nie pozwoli Ci pobrać całą witrynę, będą sprawdzać adresu przeglądarki tożsamość. Aby obejść ten problem, użyj -U mozilla, jak to wyjaśniłem powyżej.
wget -r -p -e robots=off -U mozilla http://www.example.com
Wielu właścicieli witryn nie spodoba się faktowi, że pobierasz całą witrynę. Jeśli serwer zobaczy, że pobierasz dużą liczbę plików, może automatycznie dodać cię do czarnej listy. Sposób obejścia tego polega na odczekaniu kilku sekund po każdym pobraniu. Aby to zrobić, użyj wget -tait = X (gdzie X to ilość sekund).
możesz również użyć parametru: --random-wait, aby pozwolić wget wybrać losową liczbę sekund czekać. Aby dołączyć do tego polecenia:
wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com
Czy masz przykładowy adres URL? – Fabien
Czym różni się to od [poprzedniego pytania] (http://stackoverflow.com/questions/11123477/how-to-get-a-list-of-all-paths-files-on-a-webpage-using- wget-or-curl-in-php)? Jeśli to ten sam problem, edytuj stare pytanie, aby je wyjaśnić. –
Możliwy duplikat [jak uzyskać listę wszystkich ścieżek/plików na stronie internetowej za pomocą wget lub curl w php?] (Https://stackoverflow.com/questions/11123477/how-to-get-a-list-of -all-paths-files-on-a-page-using-wget-or-curl-in-php) –