Рассказываем, как быстро и просто написать бота для Telegram на Python, используя библиотеку python-telegram-bot.
Привет! Меня зовут Илья Осипов, я методист курса программирования на Python «Девман» и больше 5 лет пишу код на этом языке. Сегодня расскажу, как новичку сделать полезного чат-бота.
Python — классный язык программирования. Но многие новички учат его неправильно: почти все онлайн-курсы, тренажёры, книги и видео предлагают начинать учить Python с нуля с каких-то странных задач, вроде: «Давайте решим вот эту математическую задачку» или «Давайте напишем рекурсивный поиск чисел Фибоначчи». Вы уже тоже зеваете от скуки?
Нет, удовольствие от программирования совсем не в этом, а в том, чтобы решать реальные проблемы. Например, я втянулся в программирование, когда писал чат-бота для своего вуза. Расписание на сайте было очень неудобно смотреть. Я решил потратить время и написать чат-бота, который будет присылать мне расписание занятий в более удобном виде. Оказалось, что другим студентам тоже было неудобно, и спустя год в чат-боте накопилось 4 тысячи пользователей.
УМНЫЙ БОТ ДЛЯ ОБЩЕНИЯ В ТЕЛЕГРАММ БЕЗ КОДА | Dialogflow and Telegram
Как раз на стыке между освоением синтаксиса и решением реальных проблем, как мне кажется, и сдаются большинство начинающих программистов. Совершенно не понятно как перейти от «сложить два числа» к написанию чего-то стоящего, чем можно похвастаться родителям, друзьям, жене и собаке.
Если вы тоже обнаружили себя в этой «яме», то этот туториал для вас. Дайте себе ещё один шанс.
Шаг 1. Зайдите в Repl.it
Создайте песочницу для языка Python. Ничего устанавливать не нужно. Просто откройте эту ссылку в соседней вкладке.
Придётся зарегистрироваться, но, думаю, вы разберётесь. ?
Шаг 2. Пройдите шаг 1
Эй, хватит читать! Так дела не делаются! Чтобы научиться программировать на Python — нужно писать код своими руками, а не смотреть, как кто-то делает это за вас ?
Вы же не думаете, что можно стать альпинистом, просматривая видео, как другие люди лезут в горы? А уж инструктором вас без реального опыта и подавно никто не наймёт. С программированием то же самое.
Шаг 3. Установите библиотеку для написания ботов
Многие советуют пользоваться более сложными библиотеками для чат-ботов. Например aiogram . Она крутая и популярная, но это библиотека для асинхронного кода. Это совсем другой зверь, которого не стоит касаться новичкам. Воспринимайте асинхронные библиотеки как другой язык программирования, хотя бы на старте.
Вместо этого будем работать с куда более простой библиотекой — python-telegram-bot . Откройте меню для установки библиотек слева-снизу:
Нужна кнопка Packages.
И в появившемся окошке вбейте её название. Нажмите на «+» напротив названия и подождите загрузки. В конце появится вот такая зелёная плашка об успехе:
Название библиотеки можно скопировать прямо из статьи, не обязательно печатать. ?
как сделать и отвечать за бота в telegram? ответ тут!!
Теперь сложноватый и неприятный момент, но такова разработка, за это нам и платят деньги. Нужно будет поменять версию библиотеки на более дружелюбную для новичков. Для этого нужно зайти в очень недружелюбный файл и подправить число на 13.15 . В общем-то больше ничего делать и не нужно, думаю, вы справитесь:
Очень страшно, ничего не понятно, но надо только поменять одно число.
Шаг 4. Запустите пример из документации
В документации к библиотеке есть готовые примеры кода. Давайте запустим пример эхобота.
Эхобот — это бот, который просто повторяет за вами. Отвечает вам тем же, что вы написали ему. Вот пример в документации. Я почистил его от всякого ненужного, поэтому можете взять сразу мой, он должен быть не таким страшным. Копируйте этот код в файл main.py и жмите кнопку > Run наверху. Ничего не получится, но так и нужно, об этом ниже:
from telegram import Update, ForceReply from telegram.ext import Updater, CommandHandler, MessageHandler, Filters def start(update, context): user = update.effective_user update.message.reply_text(‘Привет!’) def echo(update, context): update.message.reply_text(update.message.text) if __name__ == ‘__main__’: updater = Updater(«TOKEN») dispatcher = updater.dispatcher dispatcher.add_handler(CommandHandler(«start», start)) dispatcher.add_handler(MessageHandler(Filters.text 5646004689:AAECTkuGjWo1Imwr-_6UrN-nzbo89sd3WSM») dispatcher = updater.dispatcher dispatcher.add_handler(CommandHandler(«start», start)) dispatcher.add_handler(MessageHandler(Filters.text https://tproger.ru/articles/kak-uchit-python-s-nulya-s-udovol-stviem-piwem-svoego-chat-bota» target=»_blank»]tproger.ru[/mask_link]
ТОП 10 ботов Telegram для бесед
Telegram – мессенджер, в котором люди общаются. Но общаются в первую очередь с теми, кого знают и кто занесен в контакты. Есть каналы тематические и группы, в которых обычно обсуждают тот или иной пост/сообщение от ведущего этого самого канала. Но в телеграме также есть и боты для общения. Обычно, для анонимного, голосового или текстового.
Эти боты созданы просто для того, чтобы люди с кем-то поговорили, выговорились. Популярность таких ботов можно сравнить с популярностью сайтов знакомств или формных веток, в которых обсуждают всё то, что не относится к тематике форума.
Создаём Telegram-бота на Python с помощью pyTelegramBotAPI (telebot)
Сегодня будем учиться создавать ботов в Telegram с помощью Python.
Попробуем заставить бота присылать сводку погоды по нашему городу.
Нам потребуется:
- Компьютер или ноутбук (При должном усердии можно попробовать на телефоне).
- Python 3 (Мы будем работать на версии 3.10).
- Редактор кода (Я использую PyCharm).
- Соединение с интернетом.
У всех на слуху две библиотеки для разработки telegram-ботов, это:
— telebot (он же pyTelegramBotAPI),
— aiogram.