Найти в Дзене
Статьи о Жизни

Как сделать собстенного бота в Telegram

Бот Telegram под любые нужды
Бот Telegram под любые нужды

What`s up amigo. А проще говоря, привет друг.

Не вижу смысла говорить что-то типа: "Тебе нужен бот Telegram?", ну или что-то в этом духе, ибо если ты сюда зашел, значит тебе это нужно. Давай к делу.

  • Что нам нужно:
  1. pyTelegramBotAPI
  2. python
  3. Текстовый редактор

Так если шаришь, как всё устанавливать, то поздравляю, можешь это не читать, а спустись ниже и начни самое интересное.

Заходи на офф. сайт Python и скачивай последнюю версию.
После скачивания, устанавливай и не забудь поставить галочку Add to Path.
С питоном пока что всё.

Теперь нужно установить telebot(pyTelegramBotAPI). Открой коммандную строку от имени Администратора.

И введи это:

pip install pyTelegramBotAPI

Как всё установится, можно закрывать.


Теперь можно писать код.
Я использую Sublime Text 3 в качестве текстового редактора.


Создаём файл с любым названием главное сделать расширение .
py

Код будет следующий:

import telebot
from telebot import types

Так будут выглядеть первые две строчки.
Первая подключает телебот, а вторая клавиатуру.

Далее нужно следующее:

token = "тут токен"
bot = telebot.TeleBot(token)

В token поставить свой токен от бота.

Теперь:

@bot.message_handler(commands=["start"])
def cmd_start(message):
bot.send_message(message.chat.id, "Добро пожаловать")


Так вы скажите что, если человек отправит команду "/start" то ему нужно ответить "Добро пожаловать."

message.chat.id - это id пользователя которому нужно отправить сообщение.

Теперь что бы всё работало в конце нужно прописать это:

if __name__ == '__main__':
bot.infinity_polling()

Запускаем и всё работает.

Но так не интересно, можно добавить пару кнопок.
И теперь полные код будет выглядеть вот так:

import telebot
from telebot import types
token = "тут ваш токен"
bot = telebot.TeleBot(token)
@bot.message_handler(commands=["start"])
def cmd_start(message):
bot.send_message(message.chat.id, "Добро пожаловать")
@bot.message_handler(content_types=['text'])
def process_step(message):
chat_id = message.chat.id
if message.text=='Ты кто?':
keyboard = types.ReplyKeyboardMarkup(row_width=1, resize_keyboard=True)
button_why = types.KeyboardButton(text="Зачем?")
button_ok = types.KeyboardButton(text="Понятно")
keyboard.add(button_why, button_ok)
bot.send_message(chat_id, 'Я Бот которого ты создал', reply_markup=keyboard)
elif message.text == "Зачем?":
bot.send_message(chat_id, 'Тебя нужно спросить!!!')
else :
bot.send_message(chat_id, 'Не понимаю о чём ты')
if __name__ == '__main__':
bot.infinity_polling()


Пользуйтесь)