Warcworker
Репозиторий peterk/warcworker переведён в архив, последние изменения — 2024 год. Проект основан на Squidwarc, который не развивается с 2020 года. Для архивации списков URL с выполнением JavaScript сейчас используйте Browsertrix Crawler (список seed-URL, --scopeType page) или ArchiveWeb.page для ручной записи.
Warcworker — веб-архиватор в Docker с очередью заданий. Автор — Peter Krantz, лицензия GPL-3.0, написан на Python (Flask). Состоит из небольшого веб-интерфейса, очереди RabbitMQ и воркеров, которые сохраняют страницы через Squidwarc (headless Chrome) в WARC.
Важно: Warcworker не кроулер. Он не обходит сайт сам, а архивирует отдельные URL, которые ему передали (через форму, букмарклет или HTTP-запрос). Списки URL нужно готовить другими средствами. Для каждого задания можно выбрать скрипты Squidwarc, которые выполнятся на странице: прокрутка, загрузка srcset-изображений, скриншот и т. п.
Репозиторий N0taN3rd/warcworker, на который ссылались ранее, — форк 2018 года, а не основной проект.
Установка
git clone https://github.com/peterk/warcworker
cd warcworker
cp .env_example .env # задать FLASK_KEY, RMQ_USER, RMQ_PASSWORD, ERROR_EMAIL
docker-compose up -d --scale worker=3
После запуска (около минуты) веб-интерфейс доступен на http://0.0.0.0:5555. WARC-файлы складываются в каталог ./archive. Готового образа в Docker Hub нет: образы собираются из каталогов web и worker.
Команды сверены с README и
docker-compose.ymlрепозитория peterk/warcworker (октябрь 2026). Работоспособность на современных системах не проверялась.