2

Как бы вы массово загрузили файлы с веб-страницы, а также переименовали их, используя имя (описание), которое у них есть?

Идея состоит в том, что загружаемые файлы имеют описательные имена, в отличие от оригинальных имен файлов, которые не являются ни чем иным.

Например, учитывая, что веб-страница содержит следующую ссылку

<a href='http://www.example.com/docs/ex160.pdf'>Advanced Foo Bar</a>

В идеале я хотел бы сохранить его как «Advanced Foo Bar.pdf», но даже "Advanced Foo Bar" подойдет, так как я могу использовать утилиту массового переименования, чтобы добавить расширение pdf к сотням или около того файлам, которые мне нужно загрузить.

Я использую расширение FlashGotAll для Firefox для загрузки, и оно отлично работает для массовой загрузки, кроме встроенной функции переименования.

Я также могу запустить Linux(или использовать Cygwin) и использовать curl или wget, если это необходимо для этого решения.

1 ответ1

1

Предполагая, что html-содержимое выглядит как ваш пример (т.е. только один href на строку, не разделен на несколько строк, нет сочетания HREF и href и т.д.), Вы можете загрузить страницу и запустить

prompt$ grep www.example.com the_page.html | sed 's/.*href="\([^"]\+\)">\([^<]*\)<.*/wget -O "\2".pdf \1/' | tee files_to_download
wget -O "Advanced Foo Bar".pdf http://www.example.com/docs/ex160.pdf
...
prompt$

Отредактируйте files_to_download, если применимо, а затем загрузите, запустив sh files_to_download .

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