11

Я пытаюсь скачать два сайта для включения в CD:

http://boinc.berkeley.edu/trac/wiki
http://www.boinc-wiki.info

У меня проблема в том, что это оба вики. Таким образом, при загрузке, например:

wget -r -k -np -nv -R jpg,jpeg,gif,png,tif http://www.boinc-wiki.info/

Я получаю много файлов, потому что он также следует по ссылкам, как ...?действие = редактировать ...?действие = дифф & версия = ...

Кто-нибудь знает способ обойти это?

Я просто хочу текущие страницы, без изображений, без различий и т.д.

PS:

wget -r -k -np -nv -l 1 -R jpg,jpeg,png,gif,tif,pdf,ppt http://boinc.berkeley.edu/trac/wiki/TitleIndex

Это сработало для Беркли, но boinc-wiki.info все еще доставляет мне проблемы:/

PPS:

Я получил то, что кажется наиболее релевантными страницами с:

wget -r -k -nv  -l 2 -R jpg,jpeg,png,gif,tif,pdf,ppt http://www.boinc-wiki.info

4 ответа4

5

Новая версия wget (v.1.14) решает все эти проблемы.

Вы должны использовать новую опцию --reject-regex=.... для обработки строк запроса.

Обратите внимание, что я не смог найти новое руководство, которое включает в себя эти новые параметры, поэтому вы должны использовать команду справки wget --help > help.txt

4
wget --reject-regex '(.*)\?(.*)' http://example.com

(--reject-type posix по умолчанию). Работает только для последних (> = 1.14) версий wget , согласно другим комментариям.

Помните, что вы можете использовать --reject-regex только один раз за вызов wget . То есть вы должны использовать | в одном регулярном выражении, если вы хотите выбрать несколько регулярных выражений:

wget --reject-regex 'expr1|expr2|…' http://example.com
0
wget -R "*?action=*"

Это исключит что-нибудь, что содержит ?action= в его названии.

-3

Я бы сказал, что использование публичного вики-сайта - плохая практика, потому что это создает дополнительную нагрузку на него.

Если вики общедоступна, и владельцы сайта не против делиться контентом, они обычно предоставляют загружаемый бэкэнд (база данных или что-то еще). Таким образом, вы просто скачаете пакет данных, настроите локальный экземпляр того же вики-движка, импортируете в него данные и получите локальную копию. После этого, если вы хотите, вы можете делать пиявок на месте.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .