Как создать телеграм бота и получить его API Токен
Первое, что надо сделать, это открыть Telegram, через поиск найти @BotFather и нажать «Start». Это отец всех ботов в телеграмме, через него вы можете создать свой новый бот ( используя команду /newbot ) и редактировать ранее созданные.
После создания бота, вам будет выдан его токен, запишите его, он понадобится далее при создании кода бота в Python.
Создание телеграм бота используя aiogram
На середину 2022 года, библиотека aiogram для Python является самой рекомендуемой для создания телеграмм ботов, потому что она активно развивается, поддерживает актуальные изменения в telegram и стабильно работает. Для асинхронного запуска также будем использовать библиотеку asyncio.
import asyncio
import logging
from aiogram import Bot, Dispatcher, md, types
# Логгер
logging.basicConfig(level=logging.INFO)
# Bot token
BOT_TOKEN = "вставьте_сюда_из_BotFather"
# Обработчик для команды /start
async def start_handler(message: types.Message):
await message.answer(
f"Привет, {message.from_user.get_mention(as_html=True)} !",
parse_mode=types.ParseMode.HTML,
)
# Обработчик для команд /about, /help, /?
async def about_handler(message: types.Message):
logging.info(message.text)
await message.answer(md.text(
md.bold('Info about commands:\n'),
md.text('🔸', md.bold('/cs'), md.code(' - Create Story')),
md.text('🔸', md.bold('/cb'), md.code(' - Create Bug')),
sep='\n',
),
parse_mode=types.ParseMode.MARKDOWN_V2,
)
# Точка входа в приложение (инициализация бота и регистрация обработчиков)
async def main():
bot = Bot(token=BOT_TOKEN)
try:
dp = Dispatcher(bot=bot)
dp.register_message_handler(start_handler, commands=["start"], state="*")
dp.register_message_handler(about_handler, commands=["about", "help", "?"], state="*")
await dp.start_polling()
finally:
await bot.close()
asyncio.run(main())