Гайд Telegram BOT, Telebot (для новичков)

  • 68
  • 15
Данный урок предназначен для НОВИЧКОВ, если я буду останавливаться на банальных местах, то я вас предупредил.

Будем использовать библиотеку : telebot

Для того, чтобы установить библиотеку, нам нужно прописать в CMD ( чтобы открыть CMD, нужно нажать сочетание клавиш Win+R и вписать в строку : cmd ) команду pip install pyTelegramBotAPI, после чего начнётся загрузка библиотеки.
После завершения, можно открывать Python ( смотри спойлер : Приступаем к написанию кода )

Предполагается, что вы получили API с помощью BotFather. Мы будем называть это Token
В данном туториале я расскажу как написать, так называемого Эхо бота ( Для тех, кто уже понимает что-то в программировании, мануалы, откуда я брал инфу, оставил в спойлере : Мануалы )

Создайте файл с именем echo_bot.py, и пропишите первые строки кода

Python:
import telebot # импортируем нашу библиотеку telebot

bot = telebot.TeleBot("токен", parse_mode=None) # вы можете установить parse_mode по умолчанию. HTML или MARKDOWN (для тех кто шарит), за место "токен" пишем токен полученный у @BotFather


Убедитесь, что вы действительно заменили токен на свой собственный токен API !

После этого объявления нам нужно зарегистрировать несколько так называемых обработчиков сообщений. Обработчики сообщений определяют фильтры, которые должно пройти сообщение. Если сообщение проходит фильтр, вызывается украшенная функция и входящее сообщение передается в качестве аргумента.

Давайте определим обработчик сообщений, который обрабатывает входящие /start и /help команды :

Python:
@bot.message_handler(commands=['start', 'help'])
def send_welcome(message): # функция, которая выводит приветствующее сообщение ботом
    bot.reply_to(message, " Howdy, how are you doing?" # само сообщение)


Функция, оформленная обработчиком сообщений, может иметь произвольное имя, однако она должна иметь только один параметр (сообщение)

Давайте добавим еще один обработчик :

Python:
@bot.message_handler(func=lambda m: True)
def echo_all(message):
    bot.reply_to(message, message.text)


Это одно Эхо всех входящих текстовых сообщений обратно к отправителю. Он использует лямбда-функцию для проверки сообщения. Если лямбда возвращает True, сообщение обрабатывается украшенной функцией. Поскольку мы хотим, чтобы все сообщения обрабатывались этой функцией, мы просто всегда возвращаем True.

Все обработчики тестируются в том порядке, в котором они были объявлены

Теперь у нас есть базовый бот, который отвечает статическим сообщением на команды /start и /help, который повторяет остальные отправленные сообщения. Чтобы запустить бота, добавьте в наш исходный файл следующее:

Python:
bot.polling()


Ну вот и все! Наш исходный файл теперь выглядит так:

Python:
import telebot

bot = telebot.TeleBot("TOKEN")

@bot.message_handler(commands=['start', 'help'])
def send_welcome(message):
    bot.reply_to(message, "Howdy, how are you doing?")

@bot.message_handler(func=lambda message: True)
def echo_all(message):
    bot.reply_to(message, message.text)

bot.polling()


Чтобы запустить бота, просто откройте CMD и введите python echo_bot.py, чтобы запустить код
Проверьте его, отправив команды /start и /help и произвольные текстовые сообщения.

Мы написали ЭХО БОТ, поздравляю вас!

Всё я брал из официальных источников : Клик

Очень надеюсь, что помог вам!
 
Сверху Снизу