Мой бот, "Bebrabot", предназначен для поиска информации о киношках. Он использует Kinopoisk API для получения данных о фильмах, а также ходит на serp Google чтобы найти первую валидную ссылку.
Команда /start позволяет начать работу с ботом. Бот приветствует пользователя и предоставляет список доступных команд.
Команда /help выводит список доступных команд и их краткое описание.
Команда /stats выводит статистику по поисковым запросам пользователя. Она включает в себя количество выполненных запросов, список из 80 запрошенных фильмов (чтобы влезло в сообщение без ошибки) и любимый (тот, который запрашивался чаще всех) фильм пользователя.
Команда /history показывает историю последних 80 поисковых запросов пользователя. Она включает в себя количество выполненных запросов, список из запрошенных фильмов и дат запросов.
Пользователь может просто отправить название фильма, и бот попытается найти информацию о нем. Делает он это через API Кинопоиска. Если постер слишком тяжелый, то отправляется другая картинка, называемая 'backdrop' (Единственный пример, на котором у меня из-за тяжелой картинки падал бот "Тёмный рыцарь: Возрождение легенды", но теперь всё работает). Если есть, то в описании фильма печатается краткое описание, если его нет, то полное описание обрезается до крайней точки, чтобы лимит по символам не превышал 800 символов и тоже печатается. Первая выдаваемая ссылка крафтится из id в Кинопоиске, тем самым давая возможность глянуть сайт в каком-то онлайн-казино. Вторая ссылка -- просто первая ссылка из гугла с кодом возврата 200. Делается это на базе библиотеки googlesearch, которую я немного переписала, добавив тайпинги, сделав асинхронные запросы и добавив проверку на хороший код возврата (файлы googlesearch.py и user_agents.py). Если фильма не существует или фильм находится в производстве, то бот выдаст сообщение о том, что киношка не найдена.
Бот запущен у меня дома на ноуте, который существует в качесве бесперебойного сервера для манкрафта (а теперь и для бесперебойной работы бота). Туда же в командную строку проходят логи запросов.
Бот разработан Злобиной Верой aka SwtCherr.