Twitterbot
Twitterbot — бот сервиса X (Twitter), который собирает превью ссылок. Обычно такие клиенты собирают заголовок и картинку страницы для показа превью ссылки.
Такие клиенты обычно запускаются для сбора информации о содержимом страницы, чтобы показать превью ссылок. Владелец X (Twitter) использует их для создания удобных превью в своих сервисах.
Bot Guard видел этот User-Agent на 3 сайтах из 54 подключённых (6%). Первое появление в нашей статистике: 19.12.2023, последнее: 26.07.2024. Всего за это время зафиксировано 11 визитов. В среднем это около 1 визитов в день за 221 день наблюдений.
По строке определяется: название клиента — Twitterbot.
Вердикт: краулер или служебный бот. Основания: явных противоречий в строке нет; в статистике 3 сайтов, 11 визитов. Это оценка по строке и поведению, а не доказательство: по одному User-Agent нельзя гарантировать, что за ним бот или человек.
Бот превью заходит один раз, когда ссылку публикуют, и почти не создаёт нагрузки. Благодаря ему ссылка на сайт выглядит аккуратно, с заголовком и картинкой.
Строка User-Agent бота превью легко подделывается. Надёжнее сверить IP запроса с сетями компании X (Twitter) и проверить, что запросы приходят в момент, когда ссылку действительно публикуют.
Запросы этого клиента легко найти в журнале по подстроке «Twitterbot». Ниже примеры для подсчёта обращений, для nginx и для PHP. Строку лучше сверять без учёта регистра.
# сколько запросов в журнале nginx
grep -i "Twitterbot" /var/log/nginx/access.log | wc -l
# nginx: пометить запросы клиента
map $http_user_agent $is_client {
default 0;
~*Twitterbot 1;
}
// PHP: определить клиента
if (stripos($_SERVER['HTTP_USER_AGENT'] ?? '', 'Twitterbot') !== false) {
// ваша логика: пропустить, ограничить или заблокировать
}Робот, соблюдающий правила, читает robots.txt до обхода страниц. Чтобы закрыть сайт целиком или только один раздел, добавьте правило с названием клиента. robots.txt рекомендательный: подделки и недобросовестные боты его игнорируют, для них нужна блокировка на сервере.
# закрыть весь сайт
User-agent: Twitterbot
Disallow: /
# закрыть только раздел
User-agent: Twitterbot
Disallow: /private/
# разрешить всё
User-agent: Twitterbot
Allow: /Не блокируйте настоящего бота компании X (Twitter): без него ссылки на ваш сайт будут показываться без превью. Блокируйте только запросы, адрес которых не принадлежит компании X (Twitter).
Предоставленная строка "Twitterbot" является официальным идентификатором робота социальной сети X (ранее Twitter), предназначенного для сканирования и индексации веб-контента для карточек предпросмотра (Twitter Cards).
Статистика и другие строки: Twitterbot: все User-Agent и данные Bot Guard за 30 дней
Bot-guard.ru автоматически распознаёт и блокирует ботов вроде этого — без ручного ведения списков User-Agent. Подключение занимает несколько минут, сейчас сервис в открытом бесплатном тестировании.
Подключить бесплатноПроверки показывают ботов. Bot Guard их останавливает
Тариф «Старт» — 0 ₽: один сайт, до 100 000 запросов в месяц. Плагины для WordPress и 1С-Битрикс, проверка для nginx, PHP-код для любого сайта.