
Я пытаюсь загрузить архивы списков рассылки, такие как
В частности, у меня есть страница, и я хотел бы загрузить каждый файл, связанный с этой страницей, который заканчивается на ".txt.gz". Есть ли способ ограничить wget, чтобы сделать это? Если это не получится, альтернативный подход?
Рекомендации
решение1
Попробуй это:
wget \ --рекурсивный \ --без-каталогов \ --нет-родителя \ --1-й уровень \ --принять .txt.gz \ --execute robots=off \ http://lists.cryolist.org/pipermail/cryolist-cryolist.org/
Использование длинных вариантов для удобства чтения.
решение2
От wget --help
:
-r, --recursive specify recursive download.
-l, --level=NUMBER maximum recursion depth (inf or 0 for infinite).
-A, --accept=LIST comma-separated list of accepted extensions.
Имейте в виду, что файлы связаны в iFrameсписки.cryolist.org/pipermail/cryolist-cryolist.org, следующая команда даст желаемые результаты:
wget -r -l1 -A "txt.gz" lists.cryolist.org/pipermail/cryolist-cryolist.org
Переключатели
Переключатель
-r
позволяет загружать другие ресурсы, на которые есть ссылки.Переключатель
-l1
ограничивает это одним уровнем, т. е. еслиpage1
ссылки наpage2
иpage2
ссылки наunwanted.txt.gz
, этот файл не будет загружен.
решение3
Напишите bash-скрипт, сохраните все месяцы в массиве, пройдитесь по ним и вставьте их в команду wget в нужном месте.