Это SQL-версия отчёта панели управления для пользовательских агентов веб-краулеров.
В этом отчёте панели управления перечислены основные пользовательские агенты веб-краулеров, отсортированные по количеству просмотров страниц, что даёт представление о том, какие краулеры наиболее активны на сайте.
--[params]
-- date :start_date = 2024-01-06
-- date :end_date = 2024-02-07
SELECT
user_agent,
SUM(count) AS pageviews
FROM web_crawler_requests
WHERE date BETWEEN :start_date AND :end_date
GROUP BY user_agent
ORDER BY pageviews DESC
Пояснение к SQL-запросу
- Параметры: Запрос принимает два параметра —
:start_dateи:end_date, определяющие временной диапазон отчёта. Оба параметра даты принимают форматYYYY-MM-DD. - SELECT: Запрос извлекает данные из таблицы
web_crawler_requests, которая регистрирует запросы, отправляемые веб-краулерами на форум. Каждая запись в этой таблице содержитuser_agentкраулера иcount(количество) просмотров страниц. - SUM: Функция
SUM(count)вычисляет общее количество просмотров страниц для каждогоuser_agentв указанном диапазоне дат. - Фильтрация: Пункт
WHEREфильтрует записи, включая только те, которые попадают в указанный диапазон дат, используя столбецdate. - Агрегация: Пункт
GROUP BYгруппирует результаты поuser_agent, обеспечивая сводку данных для каждого веб-краулера отдельно. - Сортировка: Пункт
ORDER BYсортирует результаты по убываниюpageviews, помещая наиболее активные веб-краулеры в начало отчёта.
Записи из таблицы
web_crawler_requestsавтоматически удаляются через 30 дней. Результаты этого отчёта доступны только за последние 30 дней с момента его формирования, однако вы всё ещё можете использовать параметры данных этого запроса для фильтрации результатов за последние 30 дней.
Пример результатов
| user_agent | pageviews |
|---|---|
| Mozilla/5.0 (compatible; SeekportBot; +https://bot.seekport.com) | 1406 |
| Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots) | 724 |
| Mozilla/5.0 (compatible; DataForSeoBot/1.0; +https://dataforseo.com/dataforseo-bot) | 533 |
| … | … |

