Я знаю, что это супер старое, и я просто хотел положить свои 2 цента.
wget -m -k -K -E -l 7 -t 6 -w 5 http://www.website.com
Небольшое разъяснение относительно каждого из переключателей:
-m
По сути, это означает «зеркальное отображение сайта», и оно рекурсивно захватывает страницы и изображения при прохождении через сайт.Он проверяет временную метку, поэтому, если вы запустите wget второй раз с этим переключателем, он будет обновлять только те файлы / страницы, которые новее, чем в предыдущий раз.
-k
Это изменит ссылки в html, чтобы они указывалив локальные файлы.Если вместо использования таких вещей, как page2.html
в качестве ссылок на вашем сайте, вы на самом деле использовали полный http://www.website.com/page2.html
, вам, вероятно, понадобится / понадобится это.Я включаю его только для того, чтобы быть в безопасности - скорее всего, по крайней мере 1 ссылка вызовет проблему в противном случае.
-K
Опция выше (строчная k) редактирует HTML.Если вы также хотите использовать «нетронутую» версию, используйте этот переключатель, и он сохранит как измененную версию, так и оригинал.Это просто хорошая практика, если что-то не так, и вы хотите сравнить обе версии.Вы всегда можете удалить тот, который вам не нужен позже.
-E
Это сохраняет HTML и CSS с «правильными расширениями».Осторожнее с этим - если на вашем сайте нет расширений .html на каждой странице, это добавит его.Однако, если на вашем сайте уже есть все файлы с именами, похожими на «.htm», теперь вы получите «.htm.html».
-l 7
По умолчанию -m, который мы использовали выше, будетрекурсировать / паук через весь сайт.Обычно это нормально.Но иногда ваш сайт будет иметь бесконечный цикл, и в этом случае wget будет загружаться вечно.Подумайте о типичном website.com/products/jellybeans/sort-by-/name/price/name/price/name/price
примере.В настоящее время это происходит довольно редко - большинство сайтов ведут себя хорошо и не будут этого делать, но, чтобы быть в безопасности, определите, сколько нужно кликов, чтобы попасть с главной страницы на любую настоящую страницу на веб-сайте.это немного (было бы плохо, если бы вы использовали значение 7 и через час узнали, что ваш сайт был на 8 уровнях глубиной!) и использовали это #.Конечно, если вы знаете, что у вашего сайта есть структура, которая будет себя вести, нет ничего плохого в том, чтобы пропустить это и не сомневаться в том, что на вашем сайте была найдена 1 скрытая страница глубиной в 50 уровней.
-t 6
Если попытка получить доступ / загрузить определенную страницу или файл не удалась, это устанавливает количество попыток, прежде чем он откажется от этого файла и продолжит работу.Вы обычно хотите, чтобы он в конце концов сдался (установите его на 0, если хотите, чтобы он пробовал вечно), но вы также не хотите, чтобы он сдавался, если сайт просто шатался на секундуили дваЯ считаю 6 разумным.
-w 5
Это говорит wget подождать несколько секунд (в данном случае 5 секунд), прежде чем захватить следующий файл.Здесь часто очень важно что-то использовать (не менее 1 секунды).Позволь мне объяснить.По умолчанию wget будет захватывать страницы настолько быстро, насколько это возможно.Это может быть несколько запросов в секунду, что может привести к огромной нагрузке на сервер (особенно, если сайт написан на PHP, обеспечивает доступ к MySQL по каждому запросу и не использует кэш).Если веб-сайт находится на виртуальном хостинге, такая нагрузка может привести к тому, что кто-то скинет его хост.Даже на VPS он может поставить некоторые сайты на колени.И даже если сам сайт выживет, бомбардировка безумным количеством запросов в течение нескольких секунд может выглядеть как атака DOS, которая вполне может автоматически заблокировать ваш IP.Если вы точно не знаете, что сайт может справиться с огромным потоком трафика, используйте ключ -w # switch.5, как правило, довольно безопасно.Даже 1, вероятно, хорошо в большинстве случаев.Но используйте что-нибудь.