Как выбрать правильную библиотеку для Телеграм-бота
Ваш выбор будет зависеть от того, решите ли вы использовать Bot API или Telegram API. Я рассмотрел различия на предыдущей странице; обязательно прочитайте её сначала.
Библиотеки для Bot API
Самая популярная библиотека для разработки Telegram ботов на Питоне — это aiogram. Популярная альтернатива — Rocketgram. Для Джаваскрипта часто используют Telegraf или GrammY.
Для многих других языков тоже есть библиотеки. На официальном сайте есть списочек, который даже вроде поддерживается в актуальном состоянии.
Библиотеки для Telegram API
Самая популярная библиотека для Питона, построенная на Telegram API, — это Telethon. Поскольку Telethon не фокусируется на разработке ботов, я создал на его основе фреймворк Folds, который позволяет писать простой и масштабируемый код для ботов.
Возможные альтернативы — это Pyrogram для Питона и GramJS для Джаваскрипта.
Начало работы
Вот простой пример бота, который повторяет за пользователем в личных сообщениях:
import asyncio
from aiogram import Bot, Dispatcher, F
from aiogram.types import Message
bot = Bot(token='YOUR_BOT_TOKEN_HERE')
dp = Dispatcher()
@dp.message(F.chat.type == ChatType.PRIVATE)
async def echo(message: Message):
await message.answer(message.text)
if __name__ == '__main__':
asyncio.run(dp.start_polling(bot))
Но сначала вам нужно зарегистрировать бота и получить токен.