Найти в Дзене
Sk1lizz

Как написать лёгкого Telegram бота на Python

Оглавление

Начиная изучать Python я захотел написать своего Telegram бота. Начал искать статьи по написаю бота, но находил только для чайников, работа тех ботов ограничивалась только отправкой сообщений или эхо-бот. Теперь я уже хорошо знаю Python. И хочу рассказать Вам, как написать своего бота на Python!

Часть №1. Получения токена бота.

Перед тем как начать писать бота, нам нужно получить токен бота (без него бот не будет работать). Нужно зайти в Telegram и написать в поиске @BotFather. Далее пишем ему команды по очереди: /start, /newbot, [имя вашего бота], [никнейм бота обязательно с окончанием ( _bot или Bot )]. Готово! Если вы всё сделали правильно, то бота должен вам отправить сообщение:

Done! Congratulations on your new bot. You will find it at t.me/[никнейм бота] . You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you've finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.

Use this token to access the HTTP API:

[Ваш токен!]

Keep your token secure and store it safely, it can be used by anyone to control your bot.

For a description of the Bot API, see this page: https://core.telegram.org/bots/api

Вот сообщение, которое должно быть!
Вот сообщение, которое должно быть!

Всё, готово! Мы получили токен!

Часть №2. Установка необходимых библиотек.

Перед началом нужно установить некоторые библиотеки и сам Python.

Если у Вас не установлен Python, то делайте следующие:

Если у Вас Linux, то в командной строке напишите: sudo apt-get install python python-pip

Если Mac или Windows, то скачайте Python с официального сайта.

Потом пишем в консоль: pip install PyTelegramBotAPI

Всё готово! Python и библиотеку мы установили!

Часть №3. Первый код.

Теперь переходим в любой редактор кода или Ide и начинаем кодить!

Сначала откроем новую папку, которую мы создали перед началом и создаём новый файл. Называем его config.py и пишем в него:

token = " [токен полученный от бота] "

Сохраняем!

Далее создаём файл bot.py и записываем:

import telebot
from config import token
bot = telebot.TeleBot(token, parse_mode=None)
@bot.message_handler(commands=['start'])
def wellcome(message):
bot.send_message(message.from_user.id, "Привет! Чем могу помочь?")

Сохраняем! Пояснение: 1, 2 строка импорт необходимых модулей, 3 - для работы бота и функций, 4 - обработчик сообщений при отправке команды start, 5 - функция, 6 - отправка сообщения.

Добавим функцию при отправке обычного сообщения! Допишем в файл:

@bot.message_handler(content_types=['text'])
def chat_message(message):
if message.text == 'Привет!':
bot.send_message(message.from_user.id, "Привет!")
else:
bot.send_message(message.from_user.id, "Не понял команду!")

Сохраняем! Пояснение: 1 - обработчик сообщения, если это текст, 2 - функция, 3,5 - ветвление, 4,6 - отправка сообщения.

Осталось добавить 1 строку и всё будет работать! Допишем:

bot.polling(none_stop=True, interval=0)

Всё готово!

Для запуска бота пропишем в консоль:

python bot.py

Если запустить бота, то он будет работать! Если написать /start, то бот ответит, если написать любой текст, то бот ответит!

Это 1 часть! Их будет несколько, потом мы добавим кнопки, команды и тд.

Если есть вопросы - пишите в комментариях! Удачи!