How-to`s — Как скачать целиком любой сайт (скрипт siteget)
Мама у меня работает преподавателем в детском кружке, в последнее время увлеклась изготовлением кукол, и в свободное время ищет в Интернете информацию соответствующего характера. Больше всего ей нужны картинки уже готовых кукол, для примеров. Она стала часто попадать на сайты, где есть раздел "каталог", а там бывает достаточно много моделей. Основная проблема в том, что вручную сохранять изображения, например, щелкнув по ним и выбрав в меню пункт "сохранить как..." - крайне неудобно и долго.
Была поставлена и решена задача: быстро скачать все изображения с определенного сайта (или его раздела), которая тут же стала чуть более глобальной - скачать сайт целиком. С помощью google, по этой ссылке я нашел простое и элегантное решение:
Суть:
Создается скрипт (то есть сценарий, небольшая "программа"), который скачивает сайт целиком, используя стандартную, входящую в состав операционной системы программу wget. Сценарий делается исполняемым (изначально это простой текстовый файл), сохраняется в специальное место и в дальнейшем используется.
Расскажу, как это сделал я и рекомендую делать Вам, если у Вас ОС linux, конечно:
Была поставлена и решена задача: быстро скачать все изображения с определенного сайта (или его раздела), которая тут же стала чуть более глобальной - скачать сайт целиком. С помощью google, по этой ссылке я нашел простое и элегантное решение:
Суть:
Создается скрипт (то есть сценарий, небольшая "программа"), который скачивает сайт целиком, используя стандартную, входящую в состав операционной системы программу wget. Сценарий делается исполняемым (изначально это простой текстовый файл), сохраняется в специальное место и в дальнейшем используется.
Расскажу, как это сделал я и рекомендую делать Вам, если у Вас ОС linux, конечно:
- Открыл эмулятор терминала.
- Выполнил следующую команду, чтобы создать в домашнем каталоге специальный каталог для собственных скриптов.
mkdir ~/bin - Выполнил следующую команду, чтобы создать новый файл в текстовом редакторе (вместо nano можно вписать другой):
nano ~/bin/siteget - Вставил туда следующий код, который собственно и будет выполнять всю работу:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28#!/bin/bash
# siteget - Use wget to retrieve a website
#
if [ "$#" -ne "1" ]
then
echo "$(basename ${0}) <URL>"
echo ""
echo "Скачивает сайт или книгу в Интернете с помощью Wget."
echo "Сценарий из одной команды, но он использует много опций."
echo "Принимает одну опцию - URL верхнего уровня."
exit 1
fi
# Пояснения к опциям:
# --mirror бесконечная рекурсия, то есть wget следует по ссылкам...
# --convert-links изменение ссылок, адаптация для локального просмотра
# --no-verbose режим, частично "глушащий" отчётный вывод программы.
# --no-parent не ходить "вверх по дереву" непонятно,
# как это сочетается со следующей опцией, но кажется, работет хорошо.
# --page-requisites "привязывает" картинки для локального просмотра.
# --user-agent устанавливает строку "user agent", это помогает, когда
# некоторые сайты возвращают на запрос пустые страницы. Они не любят wget.
# ЕЩЕ полезные опции:
# -l для ограничения глубины скачивания
# -c -t 0 пригодятся при работе с плохим или ненадёжным соединением.
wget --mirror --convert-links --no-verbose --no-parent --page-requisites \
--user-agent="Mozilla/5.0 (compatible; Firefox/3.6; Linux)" ${1}
Большая часть которого, как видно - комментарии и описание.
- Сохранив изменения (ctrl+O в nano) и выйдя из редактора (ctrl+X в nano), выполнил следующую команду в консоли, чтобы сделать скрипт исполняемым:
chmod a+x ~/bin/siteget
- Скопировать в буфер обмена из адресной строки браузера адрес сайта (его корневую, главную страницу)
- Запустить Dolphin (файловый менеджер), войти в специально созданный ранее каталог "Домашняя папка/Загрузки"
- Нажать клавишу F4, чтобы вызвать встроенную в Dolphin консоль
- Набрать "siteget ", вставить из буфера обмена адрес сайта, нажать [enter]
- Дождаться, пока скрипт закончит и сообщит о результатах. В текущем каталоге ("Домашняя папка/Загрузки") будет создан каталог, одноименный с адресом сайта. Чтобы просмотреть локальную копию - следует войти в него и открыть в браузере файл index.html