Linux. Копирование сайтов [black]

Копирование и восстановление сайтов. Многие наверное знают, что есть платные сервисы по скачиванию/восстановлению сайтов, например x-tool и другие. Так вот есть еще бесплатная и очень хорошая рабочая тема, но все делается в ручную, а не нажал кнопку и все готово. Нет. Сегодня пойдет речь о Linux, семейства ubuntu (я на нем работаю) консоль творит чудеса, а собственно утилита wget и ее команды.

*Перед тем как я напишу метод. Хотелось бы сказать что я рассказываю это с целью продемонстрировать команды и способы их реализации. Не в коем случае не призываю вас применять их в корыстных целях. Спасибо.

Сама команда: wget -r -k -l 7 -p -E -nc http://site.com/ — скачиваем сайт целеком

-w 10 — добавляет 10 сек. интервал между запросами

— random-wait — рандомное время прибавляется к 10 сек.

-p параметр указывающий для wget необходимость скачивать все файлы, включая изображения.
-e robots=off вы не хотите, чтобы wget подчинялся правилам файла robots.txt
-U mozilla идентификатор вашего браузера.

Пример подмены заголовков:

wget -d --header="User-Agent: Mozilla/5.0 (Windows NT 6.0) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.97 Safari/537.11" --header="Referer: http://xmodulo.com/" --header="Accept-Encoding: compress, gzip" -r -e robots=off http://sait.ru/

–random-wait указывает wget делать случайные интервал задержек между скачиваниями, своеобразная защита от возможного попадания в бан
Еще несколько полезных параметров wget:
–limit-rate=20k ограничение скорости закачки
-b продолжает выполнять wget даже после выхода из консоли
-o $HOME/wget_log.txt выводим в лог выходные сообщения

-r указывает на то, что нужно рекурсивно переходить по ссылкам на сайте, чтобы скачивать страницы.
-k используется для того, чтобы wget преобразовал все ссылки в скаченных файлах таким образом, чтобы по ним можно было переходить на локальном компьютере (в автономном режиме).
-p указывает на то, что нужно загрузить все файлы, которые требуются для отображения страниц (изображения, css и т.д.).
-l определяет максимальную глубину вложенности страниц, которые wget должен скачать (по умолчанию значение равно 5, в примере мы установили 7). В большинстве случаев сайты имеют страницы с большой степенью вложенности и wget может просто «закопаться», скачивая новые страницы. Чтобы этого не произошло можно использовать параметр -l.
-E добавлять к загруженным файлам расширение .html.
-nc при использовании данного параметра существующие файлы не будут перезаписаны. Это удобно, когда нужно продолжить загрузку сайта, прерванную в предыдущий раз.

Пошаговая инструкция: Как скопировать/скачать любой сайт к себе на сервак

  1. Купили выделенный сервер —  zomro и тп.
  2. Установили os ubuntu или другой, предпочтительнее вам.
  3. Далее ставите себе программу на ПК — putty, через нее я спокойно работаю в терминале серва.
  4. Через WinSCP управляем нашими файлами
  5. Скачиваются сайты успешно. В настройках ставил вложенность страниц от 5 до 7 вполне хватает. Единственное не понятно почему-то не хотят прогружаться видео. С ютюб все норм.
  6. Нужно делать замену часть кода на всех страницах. С толкнулся с такой проблемой, что я этого никогда не делал, тем более через команды linux на серваке. Изучал инфу в интернете, нашел вот такие команды ls, grep, sed, awk:

ls -l — выдает список категорий

grep text ./* — поиск текста во всех категориях

grep -rl ‘text’ ./web — поиск текста в файлах категории «web»

grep -lr -e 'было' . | xargs sed -i 's/было/стало/g'

$ grep -rl искомый_текст /путь/до/папки/* | xargs perl -p -i -e ‘s/искомый_текст/заменяемый_текст/g’

Вроде как началось все получатся, единственное, с большим куском кода там уже не поиграешься…Но я нашел такую замечательную программу как TextCrawler которая ищет и заменяет код во всех папках и вложенных файлах. Единственный минус в этом способе, это то что сайт нужно сначала скачивать на ПК, менять что нам нужно и потом снова заливать на сервер. Но и это занимает не так много времени.

next..
В следующей раз я хотел бы показать способы как можно скачать сайт с вебархива.
лев охраняет мои записи
0

*Добавляй страницу в закладки чтобы не потерять ее! Нажми Ctrl + D
Понравилась статья? Поделиться с друзьями: