Я пытаюсь использовать wget для рекурсивного получения только файлов .jpg с определенного веб-сайта с целью создания забавной заставки для себя. Не такая уж и высокая цель.
Проблема в том, что изображения размещены в другом месте (mfrost.typepad.com), а не на основном домене веб-сайта (www.cuteoverload.com).
Я пробовал использовать «-D» для указания разрешенных доменов, но, к сожалению, никаких симпатичных jpg-файлов так и не появилось. Как я мог изменить строку ниже, чтобы это работало?
wget -r -l2 -np -w1 -D www.cuteoverload.com,mfrost.typepad.com -A.jpg -R.html.php.gif www.cuteoverload.com/
Спасибо.
В моем случае также требовалось -erobots = off. Файлы, которые я хотел скачать, были исключены для роботов.
Используйте httrack.com, параметры wget плохи, если вы хотите, чтобы контент dl размещался на других доменах и ссылался только на сайт, который вы сканируете.





Изучение страницы руководства wget [1] говорит о -D:
Set domains to be followed. domain-list is a comma-separated list of domains. Note that it does not turn on -H.
Этот совет по -H выглядит интересно:
Enable spanning across hosts when doing recursive retrieving.
Таким образом, вам нужно просто добавить флаг -H к вашему вызову.
(Сделав это, похоже, что все изображения ограничены mfrost.typepad.com/cute_overload/images/2008/12/07 и mfrost.typepad.com/cute_overload/images/2008/12/08).
- [1] Хотя основное справочное руководство wget находится в информационном формате.
-np/--no-parentи-D/--domains, похоже, у меня не работали, у меня был установлен wget1.12, после установки wget1.16та же команда вернула другой результат, ограничение доменов теперь работает. Моя полная команда включала эти дополнительные параметры:-m -E -k -np.