Найти в Дзене

Создаем телеграм-бота на Python за 30 минут (даже если вы новичок)

Когда я впервые узнал, что на Python можно сделать собственного Telegram-бота, мне казалось, что это магия. Оказалось — все проще, чем готовить ужин. Сегодня мы вместе напишем бота, который будет вашим личным помощником. Например, он может напоминать о том, что пора покрасить дерево или проветрить мастерскую. Что мы сделаем: Простейшего бота, который отвечает на команду /start и может прислать случайное вдохновляющее сообщение по команде /motivate. Да-да, прежде чем писать код, нужно получить у Telegram официальный "паспорт" для нашего бота — API-токен. Нам понадобится одна внешняя библиотека. Открываем терминал (командную строку) и пишем: bash pip install pytelegrambotapi Эта библиотека (pyTelegramBotAPI) — огромная работа энтузиастов, которая упрощает все взаимодействие с Telegram до пары строчек кода. Создаем файл my_first_bot.py и пишем в него этот код. Не забудьте подставить свой токен! python import telebot
import random
# Сюда вставляем ТОКЕН, который дал @BotFather
TOKEN = "
Оглавление

Когда я впервые узнал, что на Python можно сделать собственного Telegram-бота, мне казалось, что это магия. Оказалось — все проще, чем готовить ужин. Сегодня мы вместе напишем бота, который будет вашим личным помощником. Например, он может напоминать о том, что пора покрасить дерево или проветрить мастерскую.

Что мы сделаем: Простейшего бота, который отвечает на команду /start и может прислать случайное вдохновляющее сообщение по команде /motivate.

Шаг 1: Создаем бота у Отца Ботов

Да-да, прежде чем писать код, нужно получить у Telegram официальный "паспорт" для нашего бота — API-токен.

  1. Находим в Telegram @BotFather (это главный "создатель" всех ботов).
  2. Отправляем ему команду /newbot.
  3. Придумываем имя бота (то, что будут видеть пользователи), например, MyTestHelperBot.
  4. Придумываем юзернейм бота (должен оканчиваться на bot), например, my_awesome_test_bot.
  5. ВНИМАНИЕ! BotFather выдаст вам длинную строку вида 1234567890:AAHdR8yhBcAeCk6D2sT1d2G33d33d3dd3. Это ваш токен. Никому его не показывайте и не публикуйте! (На скриншоте я его всегда закрашиваю).

Шаг 2: Готовим рабочее место

Нам понадобится одна внешняя библиотека. Открываем терминал (командную строку) и пишем:

bash

pip install pytelegrambotapi

Эта библиотека (pyTelegramBotAPI) — огромная работа энтузиастов, которая упрощает все взаимодействие с Telegram до пары строчек кода.

Шаг 3: Пишем код (всего 15 строк!)

Создаем файл my_first_bot.py и пишем в него этот код. Не забудьте подставить свой токен!

python

import telebot
import random

# Сюда вставляем ТОКЕН, который дал @BotFather
TOKEN = "ВАШ_ТОКЕН_ЗДЕСЬ"

# Создаем экземпляр бота
bot = telebot.TeleBot(TOKEN)

# Список мотивирующих фраз для нашей функции
motivational_quotes = [
"Ты справишься!",
"Один щаг за другим!",
"Сложное сегодня станет простым завтра.",
"Помни, зачем начал!",
"Идеально — это когда уже сделано."
]

# Обработчик команды /start
@bot.message_handler(commands=['start'])
def send_welcome(message):
bot.reply_to(message, "Привет! Я твой первый бот. Напиши /motivate для поддержки!")

# Обработчик команды /motivate
@bot.message_handler(commands=['motivate'])
def send_motivation(message):
# Выбираем случайную фразу из списка
quote = random.choice(motivational_quotes)
bot.reply_to(message, quote)

# Запускаем бота! Он будет постоянно опрашивать серверы Telegram
print("Бот запущен и слушает сообщения...")
bot.polling()

Как это работает (объясняю на пальцах):

  • import telebot — подключаем инструменты для работы с ботом.
  • @bot.message_handler(commands=['start']) — это "декоратор". Он говорит боту: "Эй, когда кто-то напишет /start, вызови функцию send_welcome".
  • Внутри функции мы берем сообщение (message) и отвечаем на него (reply_to).
  • bot.polling() — это бесконечный цикл, где бот постоянно спрашивает у серверов Telegram: "Мне кто-нибудь что-нибудь написал?"
-2

Шаг 4: Запускаем и тестируем

  1. Сохраняем файл.
  2. Запускаем его в терминале: python my_first_bot.py.
  3. Видим в консоли сообщение "Бот запущен и слушает сообщения...".
  4. Идем в Telegram, находим своего бота по юзернейму (например, @my_awesome_test_bot) и пишем ему /start!
-3

Что дальше? Море возможностей!

Это основа. С этого момента возможности ограничены только вашей фантазией. Мой бот для мастерской теперь умеет:

  • По команде /weather присылать погоду (через парсинг сайта).
  • По команде /timer 10 засекать 10 минут (время на перемешивание смолы).
  • Присылать мне уведомление, когда на моем сайте падает посещаемость.

Главные предупреждения для новичка:

  1. Токен — это как пароль. Никогда не выкладывайте его в публичный доступ (например, на GitHub).
  2. Бот работает, пока запущен ваш скрипт. Если вы выключите компьютер, бот "уснет". Для круглосуточной работы нужен хостинг (но это тема отдельной статьи).

Попробуйте! У вас точно получится. А как только получится — в комментариях поделитесь, какого бота вы создали? Очень интересно!

Хештеги:
#python #telegrambot #программирование #автоматизация #код #python_дляначинающих #создатьбота #it