Jak sprawić, by wget pobierał tylko strony, a nie obrazy css itp.?


10

Chcę pobrać całą stronę internetową za pomocą wget, ale nie chcę, aby wget pobierał zdjęcia, filmy itp.

próbowałem

wget -bqre robots=off -A.html example.com –user-agent=”Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6″

ale kiedy to robię, nie pobiera plików .php, po prostu pobiera statyczne pliki .html.

Czy istnieje rozwiązanie tego problemu z wget?

Odpowiedzi:


6

Wyraźnie powiedziałeś wgetowi, aby akceptuje tylko pliki, które mają .htmlsufiks.

Zakładając, że mają strony php .php, możesz to zrobić:

wget -bqre robots=off -A.html,.php example.com –user-agent=”Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6″

Zauważ, że spowoduje to pobranie renderowanego html, a nie źródła php. Jeśli strona jest wystarczająco dynamiczna, możesz nie uzyskać oczekiwanego wyniku renderowania.

Sugeruję jednak, że inne narzędzie, takie jak httrack, może wykonać lepszą pracę - zależy to dokładnie od tego, co musisz zrobić.


3

-A pobiera listę, więc -A.html, .php powinno pasować do rachunku. Powinieneś także zajrzeć do -R (wymaga to także listy odrzuconych).


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.