Создать URL
Генератор Правила транслитерации Как сделать ЧПУ Блог Вопросы и ответы Создать URL
Практика

Как настроить сканирование большого сайта

Разберём настройки, которые делают обход больших проектов управляемым и безопасным.

Проблемы больших обходов

Сайт с сотнями тысяч страниц создаёт три проблемы: обход длится часами или днями, программе не хватает памяти и на сервер ложится заметная нагрузка. Если запустить краулер без настроек, он может нарушить работу сайта, особенно на слабом хостинге.

ОпределитьцельобходаНастроитьскоростьи исключенияРазбитьна сегментыПроанализироватьрезультат
ОпределитьцельобходаНастроитьскоростьи исключенияРазбитьна сегментыПроанализироватьрезультат
Как организовать большой обход

Основные настройки

Настройки краулера для больших сайтов
НастройкаЗачемРекомендация
Число потоков и паузаОграничить нагрузку на серверНачинать с малого числа потоков и повышать, наблюдая за временем ответа
Исключения по шаблонамНе обходить бесполезные адресаИсключить параметры сортировки, сессий, календарей
Ограничение глубиныНе уходить в бесконечные веткиЗадать разумный предел глубины
Ограничение числа адресовПрервать обход при ловушкеПоставить предел выше ожидаемого размера
Режим хранения данныхЭкономить памятьИспользовать хранение данных на диске, если оно есть
Пользовательский агентОтличать обход в журналахУказать понятное название
Выполнение JavaScriptВидеть содержимое, созданное скриптамиВключать только когда нужно: обход медленнее

Сегментация обхода

Вместо одного гигантского обхода разбейте сайт на части: по разделам, типам страниц, папкам. Каждый сегмент проще анализировать, легче повторять и безопаснее для сервера.

  • Обходите отдельно каталог, карточки, блог и служебные разделы.
  • Используйте карту сайта как список адресов: индексный файл для крупных проектов. Это быстро и показывает, что сайт считает важным.
  • Дополните обход по ссылкам обходом по карте: расхождения подскажут страницы-сироты и лишние адреса.

Защита сервера

  1. Предупредите администратора: обход может выглядеть как нагрузка или атака.
  2. Проведите обход в часы меньшей нагрузки.
  3. Следите за временем ответа во время обхода: если оно растёт, снижайте скорость.
  4. Если сервер защищён от автоматических запросов, добавьте адрес краулера в разрешённые.
  5. Соблюдайте правила robots.txt, если обходите чужой сайт: настройка robots.txt.

Расписание и хранение результатов

Для регулярного контроля запускайте обход по расписанию и сохраняйте результаты, чтобы сравнивать. Для больших проектов достаточно ежемесячного полного обхода и еженедельных выборочных проверок ключевых разделов. Сравнение обходов пригодится при любых изменениях структуры: сравнение адресов до и после переезда.

Что смотреть в первую очередь. Число найденных адресов, распределение по кодам ответа, глубину, страницы с параметрами и долю индексируемых: метрики качества структуры. Про выбор инструмента — в статье обзор краулеров.

Частые вопросы

Как не перегрузить сервер при сканировании?

Ограничить число потоков и добавить паузы, обходить в часы малой нагрузки и следить за временем ответа сервера.

Зачем разбивать обход на сегменты?

Так проще анализировать результаты, повторять проверки и контролировать нагрузку; один гигантский обход трудно завершить и разобрать.

Как использовать карту сайта при сканировании?

Как список адресов для проверки и как способ найти расхождения с обходом по ссылкам: они указывают на сирот и лишние адреса.

Готовый адрес можно собрать прямо сейчас: откройте генератор ЧПУ — он транслитерирует фразу по таблице Яндекса, уберёт служебные слова и покажет длину адреса.

Читайте также