wget WIKI, не получать diff-страницы (исключить по регулярному выражению?)

Я пытаюсь загрузить статическое зеркало вики с помощью wget. Мне нужна только последняя версия каждой статьи (а не полная история или различия между версиями). Было бы легко просто загрузить все это целиком и удалить ненужные страницы позже, но это заняло бы слишком много времени и создало бы ненужную нагрузку на сервер.

Есть ряд страниц, которые мне явно не нужны, например:

КтоЧтоДелает?action=diff&date=1184177979

Есть ли способ запретить wget загружать и рекурсивно использовать URL-адреса, в которых есть «action = diff»? Или иным образом исключить URL-адреса, соответствующие некоторому регулярному выражению?


person stonea    schedule 01.06.2009    source источник


Ответы (1)


person    schedule
comment
Похоже, что это загрузит страницу, отклонит ее, а затем удалит (вместо того, чтобы вообще пропустить ее загрузку). - person stonea; 01.06.2009
comment
Хотя это предотвратит повторение на отклоненной странице. - person stonea; 01.06.2009
comment
Я не вижу тому доказательств. Опция --reject работает так же, как --accept, только логика обратная; Wget загрузит все файлы, кроме тех, которые соответствуют суффиксам (или шаблонам) в списке. (-R то же самое, что и --reject и --rejlist.) Это, кажется, ясно указывает, что он не будет загружать соответствующие шаблоны. - person chaos; 01.06.2009
comment
Похоже на ошибку в wget. Эта проблема уже сталкивалась с другими людьми: bugs.debian.org/cgi- bin/bugreport.cgi?bug=217243 - person stonea; 01.06.2009
comment
Хм. Ну, это чертовски глупо. Извините, думаю, вы не можете сделать все это с помощью wget. :( - person chaos; 02.06.2009
comment
Если вы используете Mediawiki, вы можете попробовать использовать API вместо mediawiki.org/wiki/API - person Adrian Archer; 16.06.2009