Как использовать wget
и получить все файлы с сайта?
Мне нужны все файлы, кроме файлов веб-страниц, таких как HTML, PHP, ASP и т. Д.
wget --spider
сначала и всегда добавляйте -w 1
(или больше -w 5
), чтобы не затопить сервер другого человека.
Как использовать wget
и получить все файлы с сайта?
Мне нужны все файлы, кроме файлов веб-страниц, таких как HTML, PHP, ASP и т. Д.
wget --spider
сначала и всегда добавляйте -w 1
(или больше -w 5
), чтобы не затопить сервер другого человека.
Ответы:
Чтобы отфильтровать по определенным расширениям файлов:
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
расширением будут автоматически удалены.
--accept
с учетом регистра, так что вам придется сделать--accept pdf,jpg,PDF,JPG
wget
но вы должны указать --progress
тип, например--progress=dot
--ignore-case
флаг, чтобы сделать --accept
регистр нечувствительным.
Это загрузило весь сайт для меня:
wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://site/path/
-e robots=off
! Это наконец исправило мою проблему! :) Спасибо
--random-wait
Вариант гений;)
wget -m -p -E -k -K -np http://site/path/
Страница man расскажет вам, что делают эти опции.
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
т.д. варианты , вероятно, не очень понял вопрос, как и те , как и для перезаписи HTML - страниц , чтобы сделать локальную структуру, переименовав.php
файлов и так далее. Не имеет значения.
Чтобы буквально получить все файлы, кроме .html
etc:
wget -R html,htm,php,asp,jsp,js,py,css -r -l 1 -nd http://yoursite.com
-A
чувствителен к регистру, я думаю, так что вам придется сделать-A zip,ZIP
Вы можете попробовать:
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, и это будет игнорировать файл роботов