Как создать своего Telegram-бота на python за 20 минут быстро и легко — видео
Ранее я публиковал пост о том, как можно быстро и легко создать своего Telegram-бота за 20 минут. В комментариях меня попросили сделать видео.
Приятного просмотра!
Ранее я публиковал пост о том, как можно быстро и легко создать своего Telegram-бота за 20 минут. В комментариях меня попросили сделать видео.
Приятного просмотра!
Сегодня я расскажу вам, как можно быстро создать Telegram-бота! Для этого необходимо иметь компьютер/ноутбук с установленным Python и любой удобной для вас IDE. Также потребуется аккаунт в Telegram.
⚠️ Перед продолжением сразу предупреждаю, что в посте присутствует реклама
Итак, для начала давайте первым делом научимся создавать бота в Telegram. Для этого на потребуется BotFather. Заходим в Telegram и нажимаем на значок лупы.
В поиск вбиваем BotFather и нажимаем на бота BotFather, напротив которого есть специальная галочка, говорящая о том, что бот официальный. После запуска введите команду /newbot, которая и активирует функцию создания бота в Telegram.
Теперь давайте придумаем имя боту. Просто введите его в формате следующего сообщения в ответ боту. Далее нас попросят придумать username для бота — специальное идентификационное публичное имя, по которому Вашего бота смогут найти и запустить другие люди. Оно обязательно должно оканчиваться на _bot и быть уникальным — если бот выдаёт ошибку, это значит, что кто-то уже занял такое имя и по нему доступен другой бот. Также не придумывайте слишком длинные имена — это также приведёт к ошибке!
Итак, публичное имя создано! Дальше идёт длинное сообщение — в этом сообщении присутствует ссылка на бота (можно открыть и запустить уже прямо сейчас) и токен бота. Токен нужно немедленно скопировать! Токен — это, своего рода, пароль к боту — его нужно хранить в секрете и никому не показывать!
После этого бот готов, но чего-то не хватает! Давайте сделаем следующее:
Дадим боту описание
Сделаем приветствие (description)
Сделаем картинку боту для красоты
Сделаем description-картинку
Настроим команды
Напишем код на Python и начнём общение с ботом
Отправьте в BotFather команду /setabouttext — настроить описание. После этого опишите бота максимально коротко, оставляя только главную информацию — описание должно быть не более 120 символов!
После этого давайте сделаем приветствие — отправьте в BotFather команду /setdescription — настроить дискрипшн. На дискрипшн ограничений нет, но лучше, чтобы оно не превышало 300 символов — в случае превышения картинка к описанию и само описание будут обрезаны.
Далее давайте установим картинку описания. Это можно сделать командой /mybots. Затем выберите своего бота из списка, нажмите «Edit Bot», затем «Edit Description Picture». После этого пришлите картинку 640x360 пикселей — допускается фото или GIF.
Сама же картинка бота добавляется командой /setuserpic. После этого пришлите нужное фото боту — оно пойдёт в качестве его фото профиля. Картинки можно сгенерировать в этом боте — там даётся несколько бесплатных картинок — как раз хватит для нашего бота (реклама).
Теперь давайте настроим команды. Это можно сделать командой /setcommands. Бот попросит Вас прислать команды в таком формате:
one - описание
two - описание
...
На самом деле вместо one или two можно написать совершенно любую команду — это должно быть одно короткое слово на английском языке, к которому добавится /, и команда добавится в меню бота. Я напишу команды вот так:
start - Перезапуск бота
random - сгенерировать рандомное число
У меня бот будет предназначен для выбора случайного числа от 1 до 10, поэтому я и решил сделать ему команду /random.
Теперь давайте научим бота отвечать на сообщения — запрограммируем его! Для этого нам понадобится компьютер/ноутбук с установленным Python и удобной для Вас IDE. В IDE перейдём во вкладку terminal и напишем вот такую команду:
pip install PyTelegramBotAPI
Эта команда установит библиотеку PyTelegramBotAPI, в которой есть модуль telebot — с ним мы и будем работать.
В IDE создаём новый файл и вставляем следующий код:
import telebot
import random
TOKEN = '123456789:ABCdefGhIJKlmNoPQRsTuvWXyz' # Замените на реальный токен из BotFather (ранее мы копировали его)
bot = telebot.TeleBot(TOKEN)
@bot.message_handler(commands=['start'])
def send_welcome(message):
bot.reply_to(message, "Добро пожаловать в Вашего первого бота!")
@bot.message_handler(commands=['random'])
def send_random_number(message):
number = random.randint(1, 10)
bot.reply_to(message, f"Случайное число: {number}")
bot.polling()
После запуска данного кода в Вашей IDE бот заработает! Вы можете изменить код под свои задачи, а если не хватает навыков программирования, можно изучить базовую документацию Python и PyTelegramBotAPI.
Теперь очень важный вопрос: а как сделать, чтобы бот работал без запуска через IDE? На самом деле, это популярный вопрос для новичков. Для запуска бота через облако нужны специальные сервисы — хостинги. На них можно запустить бота, и он будет работать 24/7. Выбор подходящего сервиса и тарифа зависит от задачи Вашего бота — если бот простой, то и хостинг найти будет легче, и тариф в большинстве случаев будет бесплатный.
Спасибо за просмотр!
Думаю, каждый, кто активно пользуется Telegram, сталкивался с этим чувством: на экране всплывает уведомление, вы видите начало фразы, но стоит разблокировать телефон и открыть чат — а сообщения уже нет. Остается только гадать, что там было: опечатка или важная информация, которую от вас решили скрыть?
Меня как разработчика эта ситуация всегда цепляла. Это не просто мелкое неудобство, а сломанный пользовательский опыт: информация была доставлена, но тут же отобрана. Я решил, что с этим можно что-то сделать, и так появился мой пет-проект — бот, который возвращает пользователю контроль над его диалогами.
Идея была в том, чтобы создать инструмент, который фиксирует первоначальное состояние сообщений. Если собеседник решит что-то удалить или изменить, у вас останется оригинал.
Я сфокусировался на трех ключевых функциях:
• 📝 Перехват удаленных сообщений. Если собеседник отправил сообщение, а через секунду его удалил, бот успеет пересылать вам копию. Это работает со всеми типами контента: текст, голосовые, стикеры, файлы, геолокация и т.д.
• 🔄 История изменений. Когда кто-то редактирует свое сообщение, меняя его смысл, бот присылает наглядное уведомление в формате «Было» / «Стало».
• 📸 Сохранение исчезающих медиа. На мой взгляд, это самая сильная функция. Бот умеет перехватывать самоуничтожающиеся фото и видео. Вместо одноразового просмотра вы получаете полноценный медиафайл, который сохраняется в вашем чате с ботом.
За несколько месяцев тестирования накопилось примерно 21 тысяча событий (изменение/удаление/исчезающие медиа). И главное открытие: люди куда чаще отправляют исчезающие медиа, чем удаляют текст. Текст чаще просто исправляют. А вот фото — прячут намеренно.
P.S. (это анонимные логи операций, не содержащие содержание сообщений — только типы действий: удаление, редактирование, исчезающие медиа). Если что — бот не сидит с лупой над вашей перепиской. Максимум, что он “видит”, это то, что кто-то где-то что-то удалил. Представляете? У нас даже нет пункта «почитать драму», только «о, кто-то снова нажал удалить у всех». Так что бот остаётся цифровым Форрестом Гампом: он знает, что что-то произошло, но понятия не имеет, что именно. 😄
Бот работает исключительно через официальный Telegram Business API. Это не сторонний клиент и не "серая" схема.
Однако важно понимать и его ограничения, чтобы не было ложных ожиданий:
1. Бот не видит историю. Он начинает работать только с момента подключения и не имеет доступа к сообщениям, отправленным ранее.
2. Бот работает только в личных чатах. Технология Telegram Business API на данный момент не позволяет отслеживать события в групповых чатах.
Проект продолжает развиваться. Сейчас я собираю обратную связь, чтобы понять, какие еще функции могут быть полезны пользователям. Буду рад, если вы поделитесь в комментариях своими идеями или кейсами, где такой инструмент мог бы пригодиться.
Ссылка на бота: @dialog_guard_bot
Казалось бы этих ботов в Телеграмме, хоть противоположным рту отверстием в организме кушай. Ан таки нет -- все они работают исключительно в Телеграмм-приложениях, мне не удалось найти ни одного бота работающего в WEB-версии Телеграмма.
Привет, Пикабу.
Вопрос простой: какого Telegram-бота вы бы хотели видеть, но его либо нет, либо существующие — кривое барахло?
Интересны любые идеи: от полезных в быту до упоротых и развлекательных.
P.S. Ребята, вижу много скепсиса, поэтому хочу пояснить. Я не ищу идею для стартапа, чтобы потом продавать ее за миллионы. Я разработчик, ищу pet-проект, чтобы набить руку и сделать что-то реально полезное для людей. Если из этого что-то выйдет, бот будет бесплатным для пикабушников, а о процессе разработки я напишу здесь же.
Создал бота в телеграм. При добавлении в чат и выдаче прав ограничения пользователей, любой пользователь может выдать мут любому другому, оплатив его в telegram stars или в TON. Также можно купить размут и поиграть в мут-рулетка за половину цену от мута. Цены на мут, размут, минимальное и максимальное время мутов и максимальное количество мутов на пользователя в час, назначает владелец чата в настройках. Владелец чата получает до 75% stars и может их вывести в stars на аккаунт или на TON кошелек эквивалентно. Интересная ли это вообще идея? Будет ли этим кто-то пользоваться? Как вы думаете?
Как протестировать телеграм бота на нагрузку?
Я сделал простого бота на aiogram и разместил его на vps. Сейчас интересно, сколько пользователей он может одновременно выдерживать? Как это проверить?
Ps бот довольно примитивный. Принимает сообщения от юзеров и пересылает их администрации. Те, в свою очередь, отвечают им также через бота.
Предыстория идеи
Где году в 2008 - 2010 у меня с товарищем балы студия веб разработки, и мы очень успешно бесплатно продвигали сайты на первые страницы выдачи!
Наш рецепт был просто скрипт назвался кажется Linker
Суть скрипта была в том что на главной странице сайта появлялись ссылки партнеров
И ваша ссылка появлялась у партнеров ну конечно ротация по категориям итп
Это сильно поднимало индекс цитирования и сайт улетал вверх.
Конечно сейчас это не работает.
Сейчас я веду несколько телеграм каналов покупаю рекламу но выходит не очень, дорого
в лучшем случае 1 подписка 10 рублей
Суть моей идеи бот для обмена рекламой с тематическими каналами
Зарегистрировался добавил бота к с себе в канал он постит твою рекламу другим и тебе их рекламу.
Конечно каналы будут подбираться по количеству живых подписчиков.
Можно будет выбрать конкретные каналы или заблокировать конкретные каналы все через бота
Если вам такое интересно отпишите в наукометрии или поставьте + и я начну писать его уже сегодня !