Udawaj, że chciałem pobrać prostą kopię strony na mój HD w celu trwałego przechowywania. Nie szukam głębokiego rekurencyjnego pobierania, tylko pojedynczej strony, ale także wszelkich zasobów załadowanych przez tę stronę, które również powinny zostać pobrane.
Przykład: https://www.tumblr.com/
Oczekiwać:
- Indeks.html
- Wszelkie załadowane obrazy
- Wszelkie załadowane pliki JS
- Wszelkie załadowane pliki CSS
- Wszelkie obrazy załadowane do pliku CSS
- linki do zasobów strony zlokalizowanych do pracy z pobranymi kopiami (brak zależności od sieci)
Chcę wiedzieć, czy możesz mi pomóc znaleźć najlepszą składnię wget lub inne narzędzie, które to zrobi. Narzędzia, których wypróbowałem, zwykle nie ładują obrazów przez CSS, więc strona nigdy nie wygląda poprawnie, gdy jest ładowana lokalnie. Dziękuję Ci!
Rozwiązanie styczne
Znalazłem sposób na to za pomocą FireFox. Domyślne zapisywanie jest zepsute i istnieje dodatek o nazwie „Zapisywanie zakończone”, który najwyraźniej może z tym zrobić dobrą robotę. Nie można go jednak pobrać, ponieważ mówi, że nie jest obsługiwany w bieżącej wersji FireFox. Powodem jest to, że został on dodany do tego dodatku: „Mozilla Archive Format”. Zainstaluj to, a następnie, gdy użyjesz opcji Plik> „Zapisz stronę jako…”, pojawi się nowa opcja o nazwie „Strona internetowa zakończona”, która jest zasadniczo starym dodatkiem, który naprawia standardową implementację używaną przez FireFox (co jest okropne). To nie jest rozwiązanie WGET, ale zapewnia realne rozwiązanie.
EDYCJA: Kolejna niedorzeczna kwestia dla każdego, kto może śledzić to pytanie w przyszłości, próbując to zrobić. Spraw, aby dodatek działał poprawnie, musisz Narzędzia> Format archiwum Mozilli i zmienić (straszne) ustawienie domyślne „rób wierną migawkę strony” na „zachowaj skrypty i źródła za pomocą Zapisz zakończone”, w przeciwnym razie dodatek opróżni wszystko pliki skryptów i zamień je na tekst „/ * Skrypt usunięty przez zapisanie migawki * /”.