wget - говно
- он не умеет докачивать сайты. Адепты воскликнут: “но есть же ключик -nc”. Поясняю, этот ключик только запрещает скачивать уже скачанное, но никак не заставляет проверить локальный файлик скачал ли wget ссылки из него.
- невозможно запретить скачивать определённые URL. Адепты опять воскликнут: “есть же -A и -R (accept/reject) где можно указать паттерн”. Да, есть, да, можно указать, но, wget сначала скачает, сохранит, потом посмотрит… ё, ты же должен быть удалён! и удаляет.
Самое печальное что замены ему в *nix что-то не видно. (CURL не предлагать, оно не умеет сайты качать).
Update:
А теперь про метод борьбы с этим несчастьем. Есть такая замечательная утилита… sed называется. Берём вот этот скрипт, и с помощью него выдираем из скачанного сайта все ссылки. Если надо можно пропустить через grep, sort, awk, да что угодно. Итого вся строчка выглядит примерно так:
find site -type f -print | xargs ./list_urls.sed | xargs wget -nc -x -c
Ну, или чо-то в этом духе. Лучше прогнать полученные ссылки через grep чтобы выбрать только нужные, т.к. sed выберет абсолютно все.
27 июня 2009 в 17:22
Ты неправ. Адепты похлопают тебя по плечу и скажут: «It’s opensource, guy».
30 мая 2010 в 13:25
Да ты всетаки не прав в своих рассуждениях. Ошибся на этот раз.
31 мая 2011 в 14:32
Use httrack, Luck!