Некоторые URL-адреса такие:

/foo/bar

В этом у них нет такого расширения:

/foo/bar.txt

Если есть расширение, это легко:

wget -r -A .txt http://asdf.com

Но если нет, то я не уверен, как получить файлы. По сути, есть такие файлы, как PDF-файлы или другие файлы, которые находятся по пути, например /0du8qj8quqjc9 без расширения, или, может быть, даже /download.php?pdf=124u0cje8u . Вопрос в том, как загрузить эти файлы, только если они соответствуют MIME-типу . Так например что-то вроде:

wget -r --accept-mime text/plain,application/pdf http://asdf.com

Хотите знать, если есть что-нибудь сделать, как это.

1 ответ1

1

Wget2 уже имеет эту функцию :-)

--filter-mime-type    Specify a list of mime types to be saved or ignored`

### `--filter-mime-type=list`

Specify a comma-separated list of MIME types that will be downloaded.  Elements of list may contain wildcards.
If a MIME type starts with the character '!' it won't be downloaded, this is useful when trying to download
something with exceptions. For example, download everything except images:

  wget2 -r https://<site>/<document> --filter-mime-type=*,\!image/*

It is also useful to download files that are compatible with an application of your system. For instance,
download every file that is compatible with LibreOffice Writer from a website using the recursive mode:

  wget2 -r https://<site>/<document> --filter-mime-type=$(sed -r '/^MimeType=/!d;s/^MimeType=//;s/;/,/g' /usr/share/applications/libreoffice-writer.desktop)

Wget2 не был выпущен на сегодняшний день, но скоро будет. В нестабильной Debian уже есть альфа-версия.

Посмотрите https://gitlab.com/gnuwget/wget2 для получения дополнительной информации. Вы можете отправлять вопросы / комментарии непосредственно на bug-wget@gnu.org.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .