Обход

Продолжение прерванного обхода

Обходы продолжаемы. Скан — сохранённый SQLite-артефакт с происхождением, поэтому остановленный обход продолжается с места остановки, а не начинается заново.

Продолжение прерванного обхода

Сканы сохраняются

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

  • scan-reanalyze пересобирает сохранённый HTML
  • Снапшоты и закрепления для базовых линий
Продолжение прерванного обхода

Восстановление

Прерванные прогоны записаны и продолжаемы; crawl-diagnose объясняет, что остановило обход.

Как это работает

Три шага — один сохранённый скан

  1. Файл скана — контрольная точка

    SQLite-скан держит очередь, доказательства и все настройки в одном файле. Они пишутся одной транзакцией, поэтому остановка их не разъединяет.

  2. Продолжение из одного файла

    Запустите seohead crawl-site --resume с путём к скану. Стартовый URL и настройки читаются из файла — обход продолжается по тем же правилам.

  3. Диагностика остановки

    crawl-diagnose читает скан офлайн: очередь, robots, область, состояние бюджета, типы контента и записанные сбои — без единого сетевого запроса.

Что проверяется

Проверки в этой возможности

ПроверкаЧто значитКритичностьДоказательство
NO_RESPONSEТаймаут, ошибка DNS или отказ соединения. Остановившийся сервер часто проявляется именно здесь.CriticalURL и тип сбоя в скане
SERVER_ERROR_5XXСтраница отвечает 5xx — например, когда сервер перестаёт отвечать под нагрузкой.CriticalURL и код ответа
BROKEN_PAGE_4XXСтраница отвечает 4xx — она битая и для людей, и для краулеров.CriticalURL и код ответа
BLOCKED_BY_ROBOTSURL заблокирован robots.txt. Перед продолжением убедитесь, что блокировка намеренна.ImportantURL и правило robots.txt
Как запустить

Одна команда

bash
seohead crawl-diagnose --scan ./scans/audit.sqlite

Сначала установите: руководство по установке. Каждая команда работает и как MCP-инструмент для ИИ-агентов.

FAQ

Вопросы

Продолжение прерванного обхода
Можно сменить URL или настройки при продолжении?
Нет. --url, --config или --max-urls вместе с --resume отклоняются. Используются сохранённые стартовый URL и настройки — один обход никогда не выполняется по правилам другого.
Нужна ли та же сборка SpiderHead?
Да. Продолжение с другой ревизии исходников отклоняется по имени. Если эту сборку нельзя проверить как записавшую файл, передайте --producer-build с её SHA.
Будут ли страницы запрошены повторно?
Нет. Страница, уже зафиксированная в скане, не скачивается дважды. Продолжение идёт из сохранённой очереди.
Не будет ли остановленный обход выглядеть завершённым?
Нет. JSON-вывод и сохранённый аудит содержат partial, finish_reason и resumed — частичный скан никогда не читается как весь сайт.
Как продолжить обход с --out-dir?
Повторите ту же команду с тем же --out-dir. Решение принимает контрольная точка crawl_state.json в этой папке. Если область или лимиты изменились, обход начнётся заново — намеренно.