Ограничение файлов с помощью wget

Ограничение файлов с помощью wget

Я пытаюсь загрузить архивы списков рассылки, такие как

http://cryolist.org/archives/

В частности, у меня есть страница, и я хотел бы загрузить каждый файл, связанный с этой страницей, который заканчивается на ".txt.gz". Есть ли способ ограничить wget, чтобы сделать это? Если это не получится, альтернативный подход?

Рекомендации

http://www.gnu.org/software/wget/manual/html_node/

решение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 в нужном месте.

Связанный контент