Всем привет! Так как это моя первая статья и я не знаю что да как делать, буду писать как знаю.
Сегодня хотелось бы Вам рассказать как легко сделать своего Telegram бота на очень популярном Языке Программирования - Python. Статья будет в двух частях, в первой мы установим Python и все необходимые компоненты и напишем самого простого бота, во второй Напишем основную логику бота. Если Вы не новичок можете листать вниз, так как тут будет много знакомой вам информациию.
Не буду томить долгим вступлением, давайте начнем!
И так первое что мы должны сделать это составить план нашего бота. В план будут входить: какие функции будет выполнять бот и собстна все.
Как будет выглядеть наш бот со стороны пользователя:
Пользователь заходит в бота и пишет ему команду "/start"
Попадает в главное меню бота
Пользователь выбирает действие на клавиатуре кнопок
Полностью функционал боа не нужно расписывать так как это будет очень долго и в дальнейшем бесполезно
Теперь представим что будете видеть Вы как Админ и Владелец этого бота:
Вы заходите в бота написав ему команду "/start"
Попадаете в главное меню Админ-панели
Выбираете действие на клавиатуре
Вот на этом наш план бота заканчивается, приступаем к части установки Python
-
Заходим на сайт python.org
-
Нажимаем на вкладку "Download"
-
Листаем в самы низ и скачиваем последнюю версию Python (на данный момент это Python 3.10)
-
У Вас начнеться установка Установшика Python. Когда он скачается откройте его и у Вас должно открытся такое окно:
-
Обязательно сделайте галочку рядом с "Add Python 3.10 to PATH"
-
После установки появится возможность отключить ограничение длины
MAX_PATH
. В системах Linux этих ограничений нет. Проигнорировав этот пункт, вы можете столкнуться с проблемой совместимости в будущем. Код созданный на Linux не запустится на Windows. Вот и все, у Вас теперь есть Python
Теперь давайте приступим к установке, но уже бибилиотек, а не ЯП
Если не установлен pip
Скачайте файл get-pip.py и сохраните у себя на компьютере.
Откройте командную строку и перейдите в папку, в которой сохранен
get-pip.py
.В командной строке выполните команду:
python get-pip.py
илиpython3 get-pip.py
.PIP установлен ????!
Создайте новую папку где будете разрабатывать бота
Зайдите в командую строку, зайдите через нее в папку для разработки и введите команду установки библиотеки aiogram
pip install aiogram
И давайте наконец приступим к коду:
-
Для начала откроем среду разработки Python
IDLE в Windows находится в меню "Пуск" → "Python 3.10" → "IDLE". Также можно быстро найти его через "Поиск" около меню "Пуск", набрав в поле поиска "IDLE":
В IDLE есть возможность полноценно работать с файлами — просматривать, редактировать, создавать новые. Чтобы создать новый файл, выберите "File" -> "New File" (или Ctrl + N). Откроется новое окно:
Сохраним файл в папку куда мы устанавливали библиотеку
Все готово для написания кода
-
Первое что мы должны сделать это импортировать библиотеки
import logging # эта библиотека идет вместе с python from aiogram import Bot, Dispatcher, executor, types # импортируем aiogram
-
Далее обьявляем несколько переменных:
API_TOKEN = 'ТОКЕН' # Токен logginglogging.basicConfig(level=logging.INFO) # Initialize bot and dispatcher bot = Bot(token=API_TOKEN) dp = Dispatcher(bot)
-
Далее пишем первый обработчик команды /start и /help
@dp.message_handler(commands=['start', 'help']) async def send_welcome(message: types.Message): await message.reply("Привет! Это простейший бот на aiogram") # отвечает на сообщение
-
Теперь будем обрабатывать каждое сообщение и отправлять его обратно
@dp.message_handler() async def echo(message: types.Message): await message.answer(message.text)
И в самом конце добавляем две строчки что бы бот работал всегда
if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True)
Вот и все теперь осталось получить токен бота и вставить его в переменную API_TOKEN
Получение Токена Для Бота
Открываем @BotFather и запускаем его (Старт/Start).
В списке предложенных команд выбираем:
/newbot - create a new bot
, нажимаем на эту команду, или вводим ее вручную в поле для ввода сообщений.Вам предложат указать как будут звать бота, в дальнейшем название бота можно будет поменять. Вводите название в поле для ввода сообщений.
Далее вам предложат указать имя, по которому бот будет доступен для пользователей. Имя пишите, используя латинский алфавит, цифры и нижнее подчеркивание. Еще одно важное условие - имя должно оканчиваться на "bot". Можно также с большой буквы "Bot", или "_bot" или "_Bot".
После этих действий Вы получите сообщение с токеном бота
Его то мы и вставляем в переменную API_TOKEN
Если Вы выполнили все те шаги что описаны выше, у вас все успешно заработает и Вы молодец, если же у вас какие-то проблемы, пишите мне в Telegram
Комментарии (0)
kryvichh
03.01.2022 10:45Хотел посмотреть насколько сложнее/легче на Питоне реализовать бота по сравнению со своей реализацией на Delphi, а тут просто использован готовый фреймворк aiogram. Ну да, так-то бот пишется в 5 строк.
Valien
03.01.2022 12:17+2Я пишёл на админку смотреть. Что там сейчас для этого берут? Django, fastapi-admin, FlaskAdmin и что-то новое, а тут похоже не дописали статью ещё
NeoLab
05.01.2022 13:50Аналогично. Было интересно посмотреть, но кроме кода весьма сомнительного качества и комментариев к нему тут ничего не найти
UrbanRider
03.01.2022 13:29Наступил 22й год, на хабре начали учить людей, как ставить пайтон. Кошмар, какой кошмар.
Статья не соответствует заголовку совсем.
motoroller95
В итоге из плюшек тут только установка питона. Ну шо тут сказать... "познавательно"