← Все вопросы
Как вообще сделать своего телеграм-бота на Python с нуля?
9
Хочу сделать своего телеграм-бота, который будет отвечать на сообщения. Я знаю немного Python (циклы, функции), но вообще не понимаю с чего начать. Куда вписывать код, как бот вообще оживает? Объясните по шагам для самого начала.
2 ответа
14
✓ Принятый ответ — помог автору
По шагам, ничего лишнего:
- Получи токен. В Telegram найди бота
@BotFather, напиши ему/newbot, придумай имя и юзернейм (должен кончаться наbot). В ответ он пришлёт длинную строку-токен — это пароль твоего бота. - Поставь библиотеку. В терминале:
pip install aiogram. - Напиши минимальный код в файле
bot.py:
import asyncio
from aiogram import Bot, Dispatcher
from aiogram.types import Message
from aiogram.filters import CommandStart
bot = Bot("СЮДА_ТОКЕН")
dp = Dispatcher()
@dp.message(CommandStart())
async def start(message: Message):
await message.answer("Привет! Я твой первый бот")
async def main():
await dp.start_polling(bot)
asyncio.run(main())
- Запусти:
python bot.py. Пока скрипт работает в терминале — бот живой. Напиши ему/startв телеграме и он ответит.
Это и есть весь скелет. Дальше просто добавляешь новые @dp.message(...) под разные команды и тексты.
5
Дополню частую засаду новичков: бот «живёт» только пока запущен python bot.py. Закрыл терминал — бот замолчал. Это нормально на этапе учёбы: запустил, потестил, выключил. Про то, как держать его онлайн 24/7, думай уже потом, когда бот будет готов.
Ваш ответ
Войдите, чтобы ответить на вопрос.