Heritrix
Heritrix — это открытый, расширяемый, масштабируемый веб-кроулер архивного качества, разработанный Internet Archive.
Опи сание
Heritrix предназначен для веб-масштабной архивации и создаёт WARC файлы высокого качества, подходящие для долгосрочного хранения.
Особенности
- Архивное качество: Создаёт WARC файлы, соответствующие стандартам
- Расширяемость: Модульная архитектура, можно добавлять кастомные модули
- Масштабируемость: Поддерживает большие проекты архивации
- Гибкая настройка: Множество опций конфигурации через XML
Установка
Требования
- Java 8 или выше
- Минимум 2GB RAM (рекоменду ется 4GB+)
- Достаточно места на диске для WARC файлов
Скачивание
# Скачать последнюю версию с GitHub
wget https://github.com/internetarchive/heritrix3/releases/download/3.4.0-20201208/heritrix-3.4.0-20201208-dist.tar.gz
tar -xzf heritrix-3.4.0-20201208-dist.tar.gz
cd heritrix-3.4.0-20201208
Запуск
Веб-интерфейс
./heritrix
Откройте браузер и перейдите на http://localhost:8443 (по умолчанию).
Командная строка
./heritrix -a admin:admin -j job-name -c crawl-order.xml
Конфигурация
Базовый crawl-order.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans">
<bean id="crawlScope" class="org.archive.modules.deciderules.DecideRuleSequence">
<property name="rules">
<list>
<bean class="org.archive.modules.deciderules.AcceptDecideRule"/>
</list>
</property>
</bean>
<bean id="crawlController" class="org.archive.crawler.framework.CrawlController">
<property name="seeds">
<list>
<value>https://example.com</value>
</list>
</property>
</bean>
</beans>
Ограничение глубины
<bean class="org.archive.modules.deciderules.TooManyHopsDecideRule">
<property name="maxHops" value="3"/>
</bean>
Ограничение домена
<bean class="org.archive.modules.deciderules.DomainDecideRule">
<property name="shouldAccept" value="true"/>
<property name="domains">
<list>
<value>example.com</value>
</list>
</property>
</bean>