Настроил Heritrix 3.10.0 и OpenWayback
by aary
Posted on вторник апреля 07, 2026 at 05:33PM in ЖЖ
Отчёт о настройке системы веб-архивации
1. Цель работы
Настроить полный цикл сбора и последующего воспроизведения веб-контента:
Запустить и сконфигурировать краулер для выборочного скачивания сайтов.
Обеспечить передачу собранных данных в систему воспроизведения архивных копий.
Настроить фильтрацию: скачивать только нужные сайты, но при этом подхватывать все внешние ресурсы (стили, скрипты, изображения, файлы книг), необходимые для корректного отображения страниц.
Исключить нежелательный переход на посторонние сайты по обычным гиперссылкам.
Проверить работоспособность всей цепочки и выявить оптимальные настройки.
2. Используемые компоненты
Краулер – программа для сбора веб-страниц и файлов.
Система воспроизведения архивов – для просмотра сохранённых копий.
Контейнеризация – для изолированного запуска компонентов на выделенном сервере.
Рабочая станция – для подготовки конфигураций и анализа логов.
3. Выполненные этапы
3.1. Развёртывание и начальная настройка
Краулер и система воспроизведения запущены в отдельных контейнерах на серверной машине.
Настроен общий том (директория) для обмена собранными архивными файлами между краулером и системой воспроизведения.
Организована сетевая доступность между компонентами.
3.2. Настройка краулера (базовый режим)
Подготовлен минимальный рабочий конфигурационный файл, позволяющий краулеру запускаться и обрабатывать указанный начальный адрес.
В процессе отладки были устранены ошибки, связанные с аутентификацией веб-интерфейса краулера и правами на запись в рабочие каталоги.
3.3. Организация рекурсивного обхода сайта
Изначально краулер скачивал только главную страницу и не переходил по внутренним ссылкам.
Путём корректировки правил обхода («scope») удалось настроить бесконечную глубину перехода по ссылкам внутри целевого сайта.
Достигнуто стабильное скачивание сотен внутренних страниц (количество обработанных URL выросло с единиц до тысяч).
3.4. Ограничение области сканирования
В конфигурацию добавлены правила, запрещающие переход на посторонние домены по обычным гиперссылкам.
Это предотвратило «уход» краулера во внешний интернет и позволило сфокусироваться на целевом сайте.
3.5. Разрешение внешних ресурсов (стили, скрипты, картинки)
Обнаружено, что при ограничении доменов перестали скачиваться необходимые элементы оформления (CSS, JavaScript, изображения), которые физически расположены на других сайтах.
Разработана комбинация правил:
Список разрешённых доменов для таких ресурсов задан в отдельном файле.
Включена проверка «родительской страницы» – внешний ресурс скачивается только если на него есть ссылка с уже принятой страницы целевого сайта.
В результате стили и скрипты стали корректно сохраняться в архив, что обеспечивает правильное отображение страниц при воспроизведении.
3.6. Настройка скачивания файлов (книг, документов)
В конфигурацию добавлено правило, принимающее любые ссылки на файлы с типичными расширениями (PDF, EPUB, FB2, DJVU, DOC и др.) независимо от их домена.
Это позволило автоматически собирать все книжные и архивные файлы, на которые есть ссылки со страниц целевого сайта.
3.7. Отладка синтаксиса правил
В ходе работы выяснились особенности синтаксиса, используемого правилами фильтрации.
После нескольких итераций был найден рабочий вариант записи префиксов, обеспечивающий корректное распознавание доменов.
Лишние, неиспользуемые правила удалены для упрощения конфигурации.
3.8. Проверка целостности данных
Выполнен анализ логов краулера, подтверждающий, что скачиваются как страницы целевого сайта, так и внешние стили, скрипты, а также файлы книг.
Через интерфейс системы воспроизведения подтверждена возможность просмотра сохранённых страниц (со стилями) и доступа к скачанным файлам.
4. Достигнутые результаты
Стабильная работа краулера: система запускается, обрабатывает тысячи URL, не «падает» и не уходит на посторонние сайты.
Полное воспроизведение страниц: архивные копии отображаются с оригинальными стилями и оформлением.
Автоматический сбор внешних файлов: все ссылки на книги, документы и архивы, встречающиеся на целевых страницах, сохраняются в архив.
Гибкая настройка: правила фильтрации легко дополнять новыми типами файлов или разрешёнными доменами.
Прозрачность работы: все действия логируются, что позволяет отслеживать поведение краулера и выявлять возможные проблемы.
5. Замечания и рекомендации
Для обеспечения полноты архива периодически следует проверять, не появились ли на сайте ссылки на новые типы ресурсов (например, аудио, видео), и при необходимости расширять список разрешённых расширений.
При значительном росте объёма архива рекомендуется рассмотреть использование внешнего индексатора (например, CDX-сервера) для ускорения поиска и масштабирования.
В случае изменения структуры внешних ресурсов (смена домена CDN) потребуется обновить список разрешённых доменов.
Все конфигурационные файлы и сценарии запуска целесообразно хранить в системе контроля версий для воспроизводимости.
6. Вывод
В результате проделанной работы создана полностью функционирующая система веб-архивации, которая:
собирает контент с заданного сайта, включая все необходимые внешние ресурсы и файлы;
ограничивает обход только нужными доменами, не допуская бесконечного блуждания по интернету;
сохраняет собранные данные в формате, пригодном для последующего просмотра через интерфейс архивной системы.
Настройки могут быть повторно использованы для любых других сайтов с минимальными правками (замена целевого домена и, при необходимости, списка внешних ресурсов).