wget: загрузка целого сайта

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

Речь идет о возможности делать локальные копии сайтов — это бывает нужно, когда необходимо срочно слить контент всего сайта для последующей обработки, а доступ есть только по http, либо необходимо получить html-представления результатов работы скриптов, да и просто для оффлайн серфинга справочных руководств, оформленных в виде сайта. Конечно в сети и так полно примеров и разъяснений о том, какие именно нужно указать параметры для загрузки, но пусть будет и у меня.

Итак мой вариант выглядит так:

wget --wait=1 --limit-rate=100K --recursive --page-requisites --no-clobber --level=5 --html-extension --convert-links --restrict-file-names=windows --domains <домен> --no-parent -U Mozilla <адрес>

Поясню параметры группами:

--wait=1 --limit-rate=100K
 — первые два параметра, которые нужно обязательно подкрутить, предназначены для того, чтобы не «положить» целевой сайт или не быть заблокированным за чрезвычайную активность. Задается время ожидания между HTTP-запросами и общая скорость загрузки;
--recursive --page-requisites --no-clobber --level=5
 — следующие четыре параметра, отвечают за рекурсивность: включение рекурсивности, загрузка статических ресурсов страниц, не загружать то, что уже есть, с уровнем вложенности ссылок 5;
--html-extension --convert-links --restrict-file-names=windows
 — группа параметров, отвечающая за постобработку загруженных файлов: необходимо добавлять к файлам расширение html, преобразовывать ссылки на локальные, учитывать совместимость имен файлов с ОС Windows;
--domains <домен> --no-parent
 — ограничения загрузки: не выходить за рамки указанного домена и из папки выше текущей;
-U Mozilla
 — передавать заголовок user-agent c идентификатором mozilla
<адрес>
 — собственно адрес точки входа.
  • У тебя тоже disqus в хроме не работает. За наводку на wget спасибо, давно костыликами на перле пользоваться приходится, а сайты утаскивать всё чаще.

    • Странно, у меня работает 12.0742 на windows 7.  А что значит «тоже»?  Не припомню, чтобы ты жаловался у себя в блоге.

      • У меня под таким же не пашет. Ему ? в конце ссылки на скрипт мешает. Да у меня тоже отвалился, только смысл жаловаться-то :)

        • Аноним

          Странно, но я постоянно пользуюсь хромом (или хромиумом дома)  но и на твоем сайте у меня все норм. Может дело в браузере/экстеншнах/проксях/антивирусах?