bnf.fr_bot — редкий случай в этой энциклопедии, где у бота не просто есть официальный оператор, а есть закреплённое законом право на обход сайта. Это краулер Национальной библиотеки Франции (Bibliothèque nationale de France, BnF), государственного учреждения при Министерстве культуры Франции, которое ведёт архивирование французского веба в рамках французского законодательства об обязательном экземпляре («dépôt légal»).
1. Что такое bnf.fr_bot на самом деле
С 2006 года во Франции действует закон об авторском праве от 1 августа 2006 года (loi DADVSI), закрепивший институт обязательного экземпляра и для интернет-сайтов — он кодифицирован в Кодексе культурного наследия Франции (ст. L131-1–L133-1 и R131-1–R133-1). По этому закону BnF обязана собирать и сохранять цифровые публикации французского происхождения — точно так же, как библиотека веками собирала печатные издания.
Технически обход выполняет Heritrix — тот же открытый краулер, что использует Internet Archive. Официальная страница BnF прямо называет UA-строку: Mozilla/5.0 (compatible; bnf.fr_bot; +http://www.bnf.fr/fr/outils/a.dl_web_capture_robot.html) — с адресом, где объясняется происхождение обхода. Охват — французский веб: домены .fr и материалы, опубликованные во Франции или французскими издателями, вне зависимости от домена.
| Параметр | Значение |
| Название | bnf.fr_bot |
| Оператор | Bibliothèque nationale de France (BnF) — государственное учреждение Франции, официально задокументировано на bnf.fr |
| Правовая основа | Закон об обязательном экземпляре веб-контента (loi DADVSI, 2006), Кодекс культурного наследия Франции |
| Технология | Heritrix — тот же открытый краулер, что использует Internet Archive |
| User-Agent / паттерн | Mozilla/5.0 (compatible; bnf.fr_bot; +http://www.bnf.fr/fr/outils/a.dl_web_capture_robot.html) |
| Охват | Французский веб: домены .fr и контент, опубликованный во Франции или французскими издателями — независимо от домена сайта |
| robots.txt | Официально НЕ соблюдается — по закону BnF имеет право обходить сайты в рамках обязательного экземпляра независимо от файла |
| Официальная позиция по блокировке | BnF прямо просит не блокировать бота: «ваше единственное обязательство — не препятствовать процессу сбора, в частности не блокировать бота» |
| Пометка TrafficVeil | Нежелательный / Прочие краулеры и сервисы — требует пересмотра для сайтов в области охвата закона (см. раздел 8) |
2. Зачем bnf.fr_bot приходит на сайт
- ежегодный широкий обход («broad crawl») — цель охватить максимум французских сайтов, не обязательно полностью;
- выборочные тематические/точечные обходы — сайты, которые библиотекари отобрали по документальным критериям (выборы, Олимпийские игры, COVID-19, персональные блоги и дневники, активистские сайты), с частотой от раза в год до нескольких раз в день;
- по инициативе владельца сайта — можно самостоятельно предложить свой сайт для архивирования, написав на depot.legal.web@bnf.fr.
Типичный кейс: для сайта на домене .fr или с французским контентом внезапно резко вырастает частота обхода bnf.fr_bot в период выборов или значимого общественного события — это, вероятно, означает, что сайт попал в одну из тематических коллекций BnF, а не признак атаки или неправомерного скрейпинга.
3. Нагрузка и риски
Здесь стоит перевернуть привычную логику черновика: для сайтов в области охвата французского закона об обязательном экземпляре блокировка bnf.fr_bot — это не защита от «нежелательного» трафика, а потенциальное действие против официального требования законодательства Франции («ваше единственное обязательство — не препятствовать сбору»). Для сайтов вне охвата (не на .fr, без французского происхождения контента) обычная логика применима — реальной пользы, как правило, нет, но и риска для контента тоже: цель бота — архивное сохранение, а не republishing или коммерческое использование.
Отдельный практический нюанс: если контент технически недоступен для обхода (за паролем, платной подпиской, за формой доступа) — по официальной позиции BnF владелец сайта ничего не обязан делать; библиотека либо сама свяжется, либо просто пропустит такой контент.
4. Как найти bnf.fr_bot в логах
# Базовый поиск
grep -i "bnf.fr_bot" /var/log/nginx/access.log
# Топ URL, которые вычитывает бот
grep -i "bnf.fr_bot" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
# Топ IP за этим UA
grep -i "bnf.fr_bot" /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head
# Суточная активность — резкий рост может совпадать со значимым общественным событием
grep -i "bnf.fr_bot" /var/log/nginx/access.log | awk '{print $4}' | cut -d: -f1 | sort | uniq -c
Верификация. Строку UA подделать может любой скрипт. По независимым источникам, официальный обход в прошлом шёл с диапазона вокруг 194.199.7.0/24 (хост вида robot4-depot-legal-web.bnf.fr) — но эти данные не первоисточник и могли устареть, поэтому перед принятием решения стоит перепроверить актуальный ASN самостоятельно:
IP="1.2.3.4"
whois -h whois.cymru.com " -v $IP"
dig +short -x "$IP"
5. robots.txt для bnf.fr_bot
# Технически возможно, но противоречит официальной позиции BnF для сайтов в области охвата
User-agent: bnf.fr_bot
Disallow: /
# Рекомендуемый вариант, особенно для сайтов на .fr или с французским контентом
User-agent: bnf.fr_bot
Allow: /
Важно: даже если в файле стоит Disallow, по свидетельствам из практики бот всё равно может продолжать обход — правовая основа обязательного экземпляра стоит выше добровольного протокола robots.txt.
6. Блокировка вручную и через TrafficVeil
Nginx:
if ($http_user_agent ~* "bnf.fr_bot") {
return 403;
}
Apache (.htaccess):
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} bnf.fr_bot [NC]
RewriteRule ^ - [F,L]
TrafficVeil:
- перед блокировкой определите, находится ли сайт в области охвата (.fr-домен или контент французского происхождения) — для таких сайтов деny может формально идти вразрез с обязательствами по французскому закону;
- для сайтов вне охвата (например, сеть доменов TrafficVeil в других языках/юрисдикциях) — обычная логика «нежелательный, если пользы нет» применима без ограничений;
- если нагрузка от точечных тематических обходов всё же заметна для сайта в области охвата — свяжитесь с BnF по depot.legal.web@bnf.fr, а не блокируйте технически в одностороннем порядке;
- после изменения сверьте логи и, при необходимости, учитывайте, что серверная блокировка технически возможна независимо от юридического статуса запроса.
7. Что делать: короткий алгоритм
- Сайт на .fr или с французским контентом — allow является рекомендацией самой BnF, а не просто «нет вреда»;
- Сайт вне охвата французского закона (большинство международных доменов сети) — обычная логика: пользы почти никогда нет, блокировка безопасна;
- Резкий скачок обхода совпал с общественно значимым событием (выборы, крупное событие) — это ожидаемое поведение тематического сбора BnF, а не аномалия;
- Контент технически недоступен для обхода — по официальной позиции BnF, дополнительных действий не требуется;
- Не блокируйте по маске
User-agent: *, чтобы не задеть Googlebot/YandexBot заодно.
8. Открытый вопрос по категоризации
Стоит пересмотреть базовую пометку «нежелательный» для bnf.fr_bot: для сайтов в области охвата французского закона об обязательном экземпляре это, по сути, легально обязательный к недопущению блокировки краулер государственного учреждения — статус ближе к «легитимный, специальный правовой статус», чем к обычному «нежелательному прочему сервису». Возможно, стоит завести отдельную под-категорию для национальных архивных ботов с законодательным мандатом (bnf.fr_bot, bl.uk_lddc_bot Британской библиотеки и аналоги) с иной логикой рекомендаций по умолчанию.
| Бот / сосед | Кластер | Комментарий |
| bl.uk_lddc_bot | Прочие краулеры и сервисы | Аналог для Великобритании — British Library, тоже архивирование в рамках национального законодательства об обязательном экземпляре |
| ia_archiver | Прочие краулеры и сервисы | Internet Archive — похожая архивная миссия, но без правового мандата конкретной страны, обход добровольный |
| IABot (InternetArchiveBot) | Прочие краулеры и сервисы | Бот Wikipedia/Internet Archive для восстановления битых ссылок — другая задача, не архивирование целиком |
| 360Spider | Прочие краулеры и сервисы | нежелательный, но принципиально другая природа — обычный поисковый краулер без юридического мандата |
9. Стратегия allow/deny для bnf.fr_bot
| Ситуация | Действие |
| Сайт на .fr или с французским контентом (в области охвата закона) | Allow — рекомендация самой BnF, потенциально связанная с законодательными обязательствами |
| Сайт вне охвата (большинство международных доменов сети) | Обычная логика: Disallow при отсутствии пользы — риска для контента нет, но и обязательств тоже |
| Нагрузка от тематического сбора заметна на сайте в области охвата | Связаться с BnF (depot.legal.web@bnf.fr), а не блокировать в одностороннем порядке |
| Контент технически недоступен для обхода | Дополнительных действий не требуется по официальной позиции BnF |
| Подозрение на подделку UA | Сверять IP/ASN — учитывая законодательный мандат, спуфинг под этот UA менее вероятен для реального вредоносного трафика, но проверка всё равно уместна |