Crawl4AI стоит отдельного правила в антиботе: это не «ещё один hit», а повторяемый паттерн автоматизации в категории «AI и LLM-краулеры». Но прежде чем банить его как «нежелательного оператора», важно понять главное: единого оператора здесь нет вовсе. Crawl4AI — открытая (open source) Python-библиотека для веб-краулинга, заточенная под LLM- и RAG-пайплайны: свыше 60 000 звёзд на GitHub и более 9 миллионов скачиваний с PyPI по состоянию на март 2026 года. Скачать и запустить её может кто угодно — независимый разработчик, стартап, исследовательская группа, — чтобы быстро построить собственный инструмент сбора данных для своего AI-проекта.
Что такое Crawl4AI
| Параметр | Значение |
|---|---|
| Название | Crawl4AI |
| User-Agent / паттерн | crawl4ai |
| Оператор | Не фиксирован — это открытая библиотека, а не сервис одной компании; за конкретным визитом может стоять кто угодно из десятков тысяч разработчиков, использующих инструмент |
| Роль | Открытый Python-краулер для LLM/RAG-пайплайнов; обходит страницы для актуализации ответов чат-бота или RAG-поиска конкретного проекта, который его запустил |
| Документация / ориентир | docs.crawl4ai.com; репозиторий unclecode/crawl4ai на GitHub |
| Список IP | ❌ Не может существовать по определению — это библиотека, а не централизованный сервис с собственной инфраструктурой |
| robots.txt | Поддерживается технически, но НЕ включено по умолчанию — соблюдение зависит от того, включил ли конкретный разработчик флаг check_robots_txt=True в своём скрипте. Если robots.txt сайта недоступен, по умолчанию обход считается разрешённым, а не запрещённым |
| Пометка TrafficVeil | Нежелательный / AI и LLM-краулеры |
Почему это принципиально «ничей» бот, а не один недобросовестный оператор
Если в логах регулярно мелькает crawl4ai, почти наверняка ваш контент интересен как сырьё для чьего-то AI-продукта — но это «чей-то» может каждый раз означать нового, никак не связанного с предыдущим человека. Библиотека не привязана к единому сервису, у неё нет центрального бэкенда, куда стекаются все запросы, — каждый разработчик запускает свой собственный экземпляр краулера локально или в облаке под свои задачи. Практическое следствие: бессмысленно искать «политику соблюдения robots.txt у Crawl4AI» как единый факт — у каждого конкретного скрипта, использующего эту библиотеку, поведение может быть разным в зависимости от того, как его настроил конкретный автор. Один и тот же токен в логах в разные дни может принадлежать совершенно разным, никак не связанным проектам.
Технический профиль: почему нагрузка может быть заметной
В отличие от простых HTTP-клиентов, Crawl4AI работает поверх настоящего headless-браузера на движке Playwright/Chromium — то есть полноценно исполняет JavaScript и рендерит страницу, как это делал бы реальный браузер. Это даёт более качественные данные для AI-пайплайнов, но и создаёт заметно более высокую нагрузку на сервер по сравнению с лёгким текстовым краулером — каждый запрос может стоить origin гораздо дороже, чем простой GET.
Подключите домен и посмотрите живую ленту: кто пришёл, с какой сети, что запрашивал и по какому правилу был пропущен или заблокирован.
Зачем Crawl4AI приходит на сайт
- Какие зоны чаще трогает: /blog/, /product/, /category/, /news/, /api/ (если открыто), пагинация каталога
- Что ищет: контент, метаданные, availability или ссылочный граф — в логике категории «AI и LLM-краулеры»
- Чем отличается от браузерного пользователя: нет нормальной сессии, другие интервалы, повторяемый path-паттерн — несмотря на то, что технически использует настоящий браузерный движок
Типичный кейс: CDN-трафик дорожает, origin CPU пилит HTML. Фильтр по crawl4ai показывает, что бот вычитывает разделы: /blog/, /product/, /category/, /news/, /api/ (если открыто), пагинацию каталога.
Нагрузка и риски
Отдельной строки в публичной сводке top-bot TrafficVeil у crawl4ai может не быть, но в категории «AI и LLM-краулеры» такие агенты дают характерный фон: даже если один конкретный запуск библиотеки соблюдает robots.txt, следующий запуск того же инструмента другим разработчиком может вести себя иначе — проверяйте поведение каждый раз заново, а не полагайтесь на прошлый опыт. Смотрите не только абсолютный RPS, но и качество хитов: глубина обхода, повторы одних и тех же URL, отсутствие cookie/сессий и концентрация на служебных или листовых страницах.
Как найти Crawl4AI в логах
# Базовый поиск
grep -i "crawl4ai" /var/log/nginx/access.log
# Топ URL, которые вычитывает бот
grep -i "crawl4ai" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
# Топ IP за этим UA
grep -i "crawl4ai" /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head
# Суточная активность
grep -i "crawl4ai" /var/log/nginx/access.log | awk '{print $4}' | cut -d: -f1 | sort | uniq -c
Верификация
Подделать User-Agent может любой скрипт — но здесь даже подлинная, неподделанная строка crawl4ai не даёт информации об операторе, поскольку его попросту нет как единой сущности. Смотрите связку UA + ASN/IP + частоту + набор URL для оценки конкретного случая, а не пытайтесь найти «официальные диапазоны» — их не существует.
IP="1.2.3.4"
whois -h whois.cymru.com " -v $IP"
dig +short -x "$IP"
robots.txt для Crawl4AI
# Жёсткий запрет
User-agent: crawl4ai
Disallow: /
# Разрешить всё
User-agent: crawl4ai
Allow: /
# Компромисс: закрыть служебные разделы, оставить публичку
User-agent: crawl4ai
Disallow: /admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /api/
Allow: /
Важно: Disallow/403 для crawl4ai, если пользы нет. Поскольку соблюдение robots.txt зависит от настроек конкретного скрипта, а не от единой политики оператора, не удивляйтесь, если один запуск библиотеки уважает запрет, а другой — полностью его игнорирует. Если агент игнорирует robots.txt, переходите к nginx/Apache или запрету в TrafficVeil.
Блокировка вручную и через TrafficVeil
Nginx
if ($http_user_agent ~* "crawl4ai") {
return 403;
}
limit_req_zone $binary_remote_addr zone=crawl4ai:10m rate=10r/m;
location / {
if ($http_user_agent ~* "crawl4ai") {
limit_req zone=crawl4ai burst=20 nodelay;
}
}
Apache (.htaccess)
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} crawl4ai [NC]
RewriteRule ^ - [F,L]
TrafficVeil
- Найдите crawl4ai / Crawl4AI в ботах домена или в /system/bots
- Для нежелательного сценария — категория «запретить»; для мягкого — rate-limit
- Allow только при явной пользе от конкретного известного вам использования (например, собственный внутренний проект на этой библиотеке)
- После изменения сверьте логи: хиты Crawl4AI должны уйти в блок/лимит, а нужные поисковики остаться
Рекомендации: что делать с Crawl4AI
- Если пользы нет — Disallow/403 для crawl4ai; учитывая отсутствие единого оператора, рассчитывать на добровольное соблюдение запрета всеми пользователями библиотеки не стоит
- Если польза есть (например, известный вам партнёр строит RAG-поиск по вашему контенту с вашего ведома) — Allow только для этого конкретного, проверенного случая
- Если нагрузка мешает — сначала rate-limit, затем полный запрет; учитывая полноценный браузерный рендеринг, нагрузка может быть выше ожидаемой
- Не режьте слишком широко
User-agent: *, чтобы случайно не закрыть Googlebot/YandexBot - Что будет при блокировке: скорее всего потеряете цитирования/упоминания в AI-ответах тех проектов, что сейчас используют библиотеку против вашего сайта, но разгрузите origin и сохраните контент
С кем не путать Crawl4AI
| Бот / сосед | Кластер | UA | Комментарий |
|---|---|---|---|
| AI2Bot | AI и LLM-краулеры | ai2bot | нежелательный |
| AI2Bot-Dolma | AI и LLM-краулеры | ai2bot-dolma | нежелательный |
| Ai2Bot-DeepResearchEval | AI и LLM-краулеры | ai2bot-deepresearcheval | нежелательный |
| AnthropicBot | AI и LLM-краулеры | anthropic-ai | нежелательный |
| AzureAI-SearchBot | AI и LLM-краулеры | azureai-searchbot | нежелательный |
Стратегия allow/deny для Crawl4AI
| Ситуация | Действие |
|---|---|
| Известный и проверенный конкретный случай использования | Allow + закрыть /admin /cart /api |
| Только мешает и жрёт ресурсы | Disallow + запрет в TrafficVeil |
| Нужен доступ, но пики по ночам | Rate-limit на nginx/TrafficVeil |
| Нежелательный по базе TrafficVeil | Deny по умолчанию, исключения — точечно |
| Подозрение на spoofing UA | Не доверять строке UA; смотреть IP/ASN и поведение — но помнить, что даже подлинная строка не даёт единого оператора |
Частые вопросы
Кто оператор бота Crawl4AI?
Соблюдает ли Crawl4AI robots.txt по умолчанию?
Что происходит, если robots.txt сайта недоступен во время обхода?
Почему нагрузка от Crawl4AI может быть выше, чем от обычного краулера?
Может ли один и тот же токен crawl4ai в разные дни принадлежать разным проектам?
Стоит ли надеяться на добровольное соблюдение robots.txt всеми пользователями библиотеки?
Команда TrafficVeil разрабатывает инструменты защиты сайтов от ботов, DDoS и веб-атак. Разборы ботов пишем по логам подключённых доменов и открытым данным операторов.