HTTP не имеет понятия о каталогах. Слеши, кроме первых трех (http://example.com/
), не имеют особого значения, за исключением ..
в относительных URL. Поэтому, если только сервер не следует определенному формату, нет никакой возможности “загрузить все файлы в указанную директорию”.
Если вы хотите загрузить весь сайт, то лучше всего переходить по всем ссылкам на главной странице рекурсивно. Скручивание не может этого сделать, но wget может. Это сработает, если сайт не слишком динамичен (в частности, wget не увидит ссылок, которые построены с помощью Javascript-кода). Начните с wget -r http://example.com/
и посмотрите в разделах “Параметры рекурсивного восстановления” и “Параметры рекурсивного принятия/отклонения” в руководстве wget более актуальные опции (глубина рекурсии, списки исключений и т.д.).
Если сайт пытается заблокировать автоматическую загрузку, вам может понадобиться изменить строку агента пользователя (-U Mozilla
), и проигнорировать robots.txt
(создать пустой файл example.com/robots.txt
и использовать опцию -nc
, чтобы wget не пытался загрузить его с сервера).