Как скачать все файлы (но не HTML) с веб-сайта с помощью wget?

Как использовать wget и получить все файлы с сайта?

Мне нужны все файлы, кроме файлов веб-страницы, таких как HTML, PHP, ASP и т. д.

9 ответов


для фильтрации определенных расширений файлов:

wget -A pdf,jpg -m -p -E -k -K -np http://site/path/

или, если вы предпочитаете длинные имена вариант:

wget --accept pdf,jpg --mirror --page-requisites --adjust-extension --convert-links --backup-converted --no-parent http://site/path/

это будет отражать сайт, но файлы без jpg или pdf расширение будет автоматически удалено.


это загрузило весь сайт для меня:

wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://site/path/

wget -m -p -E -k -K -np http://site/path/

man page расскажет вам, что делают эти параметры.

wget будет только следовать ссылкам, если нет ссылки на файл со страницы индекса, то wget не будет знать о его существовании и, следовательно, не загружать его. то есть. это помогает, если все файлы связаны с веб-страницами или индексами каталогов.


Я пытаюсь загрузить zip-файлы, связанные с страница тем Omeka - очень похожие задачи. Это сработало для меня:

wget -A zip -r -l 1 -nd http://omeka.org/add-ons/themes/
  • -A: принимать только zip-файлы
  • -r: recurse
  • -l 1: один уровень глубоко (т. е. только файлы, непосредственно связанных с этой страницы)
  • -nd: не создавайте структуру каталогов, просто загрузите все файлы в этот каталог.

все ответы с -k, -K, -E etc параметры, вероятно, не совсем поняли вопрос, как те, что для перезаписи HTML-страниц, чтобы сделать локальную структуру, переименование .php файлы и так далее. Не относящийся.

чтобы буквально получить все файлы за исключением .html etc:

wget -R html,htm,php,asp,jsp,js,py,css -r -l 1 -nd http://yoursite.com

можно попробовать:

wget --user-agent=Mozilla --content-disposition --mirror --convert-links -E -K -p http://example.com/

также вы можете добавить:

-A pdf,ps,djvu,tex,doc,docx,xls,xlsx,gz,ppt,mp4,avi,zip,rar

чтобы принять определенные расширения или отклонить только определенные расширения:

-R html,htm,asp,php

или исключить конкретные области:

-X "search*,forum*"

если файлы игнорируются для роботов (например, поисковые системы), вы также должны добавить: -e robots=off


попробуйте это. Это всегда работает для меня

wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL

wget -m -A * -pk -e robots=off www.mysite.com/

это загрузит все типы файлов локально и укажет на них из файла html и он будет игнорировать роботы файлом


в системах Windows, чтобы получить wget вы можете

  1. скачать Cygwin
  2. скачать GnuWin32

это работает для меня:

wget -r -np http://yoursite.com/path/