Natknąłem się na tę stronę internetową, która mówi o tym.
Więc kiedy pobierasz całą stronę internetową, pobierając wersję spakowaną gzip, jakie jest właściwe polecenie?
Przetestowałem to polecenie, ale nie wiem, czy wget naprawdę dostaje wersję spakowaną gzip:
wget --header="accept-encoding: gzip" -m -Dlinux.about.com -r -q -R gif,png,jpg,jpeg,GIF,PNG,JPG,JPEG,js,rss,xml,feed,.tar.gz,.zip,rar,.rar,.php,.txt -t 1 http://linux.about.com/
Odpowiedzi:
Jeśli poprosisz o zawartość gzip (używając poprawnego kodowania: nagłówek gzip, co jest poprawne), rozumiem, że wget nie może wtedy odczytać treści. Tak więc skończysz na jednym, spakowanym gzipie pliku na dysku dla pierwszej trafionej strony, ale żadnej innej zawartości.
tzn. nie możesz użyć wget do żądania treści spakowanych gzipem i do ponownego uruchomienia całej witryny w tym samym czasie.
Myślę, że jest łatka, która pozwala wgetowi na obsługę tej funkcji, ale nie ma jej w domyślnej wersji dystrybucyjnej.
Jeśli podasz flagę -S, możesz stwierdzić, czy serwer WWW odpowiada poprawnym typem treści. Na przykład,
Kodowanie treści wyraźnie określa gzip, jednak dla linux.about.com (obecnie),
Zwraca tekst / HTML.
Ponieważ niektóre starsze przeglądarki nadal mają problemy z zawartością zakodowaną w gzip, wiele stron umożliwia to tylko na podstawie identyfikacji przeglądarki. Często wyłączają go domyślnie i wyłączają tylko wtedy, gdy wiedzą, że przeglądarka może je obsługiwać - i zwykle nie zawierają wget na tej liście. Oznacza to, że może się okazać, że wget nigdy nie zwraca treści gzip, nawet jeśli witryna wydaje się to robić w przeglądarce.
źródło
Content-Type: text/html; charset=UTF-8
, ale jest teżContent-Encoding: gzip
. To nie byłaby przejrzysta kompresja, gdyby użycie tego zmusiło gzip typu MIME do wszystkiego ... Pobiegłemstrace -s 128 wget ...
zobaczyć niektóre bajty odczytane z gniazda / zapisane na dysk. Nie są ASCII. Chociaż myślę, że w 2011 roku twoje polecenie nie otrzymało wersji spakowanej gzipem, w 2015 roku to samo polecenie. (wget 1.15).proste polecenie, aby uzyskać stronę HTML i skompresować ją lub uzyskać dowolny plik i skompresowany.
aby uzyskać więcej informacji na temat opcji. użyj polecenia man.
źródło