Próbuję pobrać dwie witryny w celu umieszczenia na płycie CD:
http://boinc.berkeley.edu/trac/wiki
http://www.boinc-wiki.info
Problemem jest to, że są to wiki. Więc podczas pobierania za pomocą np .:
wget -r -k -np -nv -R jpg,jpeg,gif,png,tif http://www.boinc-wiki.info/
Dostaję dużo plików, ponieważ podążają one również za linkami takimi jak ...? Akcja = edycja ...? Akcja = różnica i wersja = ...
Czy ktoś zna sposób na obejście tego?
Chcę tylko bieżące strony, bez obrazów i bez różnic itp.
PS:
wget -r -k -np -nv -l 1 -R jpg,jpeg,png,gif,tif,pdf,ppt http://boinc.berkeley.edu/trac/wiki/TitleIndex
To zadziałało w Berkeley, ale boinc-wiki.info wciąż sprawia mi kłopoty: /
PPS:
Mam najbardziej odpowiednie strony z:
wget -r -k -nv -l 2 -R jpg,jpeg,png,gif,tif,pdf,ppt http://www.boinc-wiki.info
Odpowiedzi:
Nowa wersja wget (v.1.14) rozwiązuje wszystkie te problemy.
Musisz użyć nowej opcji
--reject-regex=....
do obsługi ciągów zapytań.Zauważ, że nie mogłem znaleźć nowego podręcznika, który zawiera te nowe opcje, więc musisz użyć polecenia help
wget --help > help.txt
źródło
(
--reject-type posix
domyślnie). Działa tylko dla najnowszych (> = 1,14) wersjiwget
, zgodnie z innymi komentarzami.Uważaj, że wydaje się, że możesz użyć
--reject-regex
tylko raz nawget
połączenie. Oznacza to, że musisz użyć|
jednego wyrażenia regularnego, jeśli chcesz wybrać kilka wyrażeń regularnych:źródło
|
symbolu („potoku”) nie działają dla mnie w GNU Wget 1.16.Wyklucza to wszystko, co zawiera
?action=
jego nazwa.źródło
Powiedziałbym, że wypijanie publicznej witryny wiki to zła praktyka, ponieważ nakłada na nią dodatkowe obciążenie.
Jeśli wiki jest publiczna, a właściciele witryn nie mają nic przeciwko udostępnianiu treści, zwykle zapewniają zrzut do pobrania (bazy danych lub cokolwiek innego). Wystarczy pobrać pakiet danych, skonfigurować lokalną instancję tego samego silnika wiki, zaimportować do niej dane i mieć lokalną kopię. Następnie, jeśli chcesz, możesz zrobić pijawkę lokalnie.
źródło