Pobierz WSZYSTKIE foldery, podfoldery i pliki za pomocą Wget

21

Korzystam z Wget i napotkałem problem. Mam witrynę, która ma kilka folderów i podfolderów w witrynie. Muszę pobrać całą zawartość każdego folderu i podfolderu. Wypróbowałem kilka metod przy użyciu Wget, a kiedy sprawdzam zakończenie, wszystko, co widzę w folderach, to plik „indeksu”. Mogę kliknąć plik indeksu, a to zabierze mnie do plików, ale potrzebuję rzeczywistych plików.

czy ktoś ma polecenie Wget, które przeoczyłem, czy jest inny program, którego mógłbym użyć, aby uzyskać wszystkie te informacje?

przykład strony:

www.mysite.com/Pictures/ na zdjęciach DIr, istnieje kilka folderów .....

www.mysite.com/Pictures/Accounting/

www.mysite.com/Pictures/Managers/North America / California / JoeUser.jpg

Potrzebuję wszystkich plików, folderów itp ...

Horrid Henry
źródło
1
Czy zapoznałeś się z dokumentacją wgetdotyczącą korzystania z niej rekurencyjnie ?
Mojżesz
W dokumentacji znajduje się również artykuł , który wydaje się odpowiedni.
Mojżesz

Odpowiedzi:

38

Chcę założyć, że nie próbowałeś tego:

wget -r --no-parent http://www.mysite.com/Pictures/

lub w celu pobrania zawartości bez pobierania plików „index.html”:

wget -r --no-parent --reject "index.html *" http://www.mysite.com/Pictures/

Odniesienie: Używanie wget do rekurencyjnego pobierania katalogu zawierającego dowolne pliki

Felix Imafidon
źródło
1
Dzięki, uruchomiłem to polecenie kilka razy, ale nie pozwoliłem, aby polecenie zakończyło się do końca. Zostałem śledzony z boku i pozwoliłem, by polecenie faktycznie się zakończyło, i najpierw skopiowało WSZYSTKIE foldery, potem wróciło i skopiowało WSZYSTKIE pliki do folderu.
Horrid Henry
po prostu chce ci pokazać, gdybym miał cierpliwość, zrobiłbym to 2 tygodnie temu .... LOL. :) dzięki jeszcze raz.
Horrid Henry
@Horrid Henry, Gratulacje!
Felix Imafidon,
Korzystam z podobnego polecenia, ale otrzymuję tylko plik index.html!
shenkwen
20

używam wget -rkpN -e robots=off http://www.example.com/

-r oznacza rekurencyjnie

-koznacza konwersję linków. Więc linki na stronie będą localhost zamiast example.com/bla

-p oznacza pozyskanie wszystkich zasobów strony internetowej, aby uzyskać obrazy i pliki javascript, aby strona działała poprawnie.

-N jest pobieranie znaczników czasu, więc jeśli pliki lokalne są nowsze niż pliki w zdalnej witrynie, pomiń je.

-eto opcja flagi, która musi tam być, robots=offaby działać.

robots=off oznacza zignoruj ​​plik robota.

Miałem również -cw tym poleceniu, więc jeśli połączenie zostało przerwane, jeśli będzie kontynuowane tam, gdzie zostało przerwane, gdy ponownie uruchomię polecenie. Uznałem, że -Nbędzie dobrze-c

Tim Jonas
źródło
Czy możesz dodać kilka zdań do swojej odpowiedzi, aby wyjaśnić, co robią te ustawienia parametrów?
fixer1234
Przepraszam. na pewno źle je teraz dodam
Tim Jonas,
Zaktualizowałem swoją odpowiedź
Tim Jonas,
Dzięki. Czy więc -c powinno być częścią twojego polecenia lub dodane opcjonalnie po niepełnym pobraniu? Ponadto -e jest tak, że polecenie ma pierwszeństwo przed wszystkimi, które mogą być w .wgetrc? I czy to literówka na -r (rekurencyjne vs. samotne)?
fixer1234
Tak to jest poprawne. Tak -e, wykona polecenie tak, jakby było częścią .wgetrc. Dodałem go tam, ponieważ robots=offwydaje się, że nie działałoby bez niego.
Tim Jonas,
1

wget -m -A * -pk -e robots = off www.mysite.com/ spowoduje to pobranie wszystkich typów plików lokalnie i wskazanie ich z pliku html
oraz zignorowanie pliku robota

Abdalla Mohamed Aly Ibrahim
źródło