Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программирования Pyton ошибка создание бота телеграмм

Артём Абаев Ученик (89), открыт 12 часов назад
Хочу создать телеграмм бота но в команде
from telegram import Update
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext, ConversationHandler

# Состояния для ConversationHandler
ASK_AGE = 1

def start(update: Update, context: CallbackContext) -> int:
update.message.reply_text("Привет! Сколько тебе лет?")
return ASK_AGE

def ask_age(update: Update, context: CallbackContext) -> int:
try:
age = int(update.message.text)
if age < 18:
update.message.reply_text("Ты еще молод, но у тебя все впереди!")
elif 18 <= age <= 60:
update.message.reply_text("Отличный возраст для достижения целей!")
else:
update.message.reply_text("Умудренный опытом! Делись мудростью с другими!")
except ValueError:
update.message.reply_text("Пожалуйста, введи число.")
return ASK_AGE
return ConversationHandler.END

def cancel(update: Update, context: CallbackContext) -> int:
update.message.reply_text("Диалог завершен. Увидимся!")
return ConversationHandler.END

def main():
# Замените 'YOUR_TOKEN_HERE' на ваш токен от BotFather
updater = Updater("YOUR_TOKEN_HERE")
dispatcher = updater.dispatcher

# ConversationHandler для обработки состояний
conv_handler = ConversationHandler(
entry_points=[CommandHandler('start', start)],
states={
ASK_AGE: [MessageHandler(Filters.text & ~Filters.command, ask_age)],
},
fallbacks=[CommandHandler('cancel', cancel)],
)

dispatcher.add_handler(conv_handler)

# Запуск бота
updater.start_polling()
updater.idle()

if name == 'main':
main()
Есть 10 ошибок
и пишит это: Traceback (most recent call last):
File "C:\Users\капибара\PycharmProjects\PythonProject\Бот телеграмм.py", line 1, in
from telegram import Update
ModuleNotFoundError: No module named 'telegram'

Процесс завершился c кодом выхода 1

Я обновил и всё сделал, но до сих пор ничего не работает
В чём проблема? Что делать
3 ответа
YT_VolkOFF Оракул (80498) 12 часов назад
Попробуйте установить библиотеку python-telegram-bot с помощью команды:
pip install python-telegram-bot
Если проблема не решается, возможно, вам нужно обновить интерпретатор Python или использовать другую версию библиотеки.
Crypto-inFestor Гуру (3599) 12 часов назад
Я могу рассказать тебе что такое print и +=
basturmanМыслитель (7487) 12 часов назад
Росскеж мне
Crypto-inFestor Гуру (3599) basturman, print() выводит в консоль то что в скобочках, плюсравно
Анонимус Мудрец (14870) 5 часов назад
Ошибка, которую вы видите (ModuleNotFoundError: No module named 'telegram'), указывает на то, что библиотека python-telegram-bot, необходимая для работы с Telegram API, не установлена в вашей среде Python.

 from telegram import Update 
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext, ConversationHandler

# Состояния для ConversationHandler
ASK_AGE = 1

def start(update: Update, context: CallbackContext) -> int:
update.message.reply_text("Привет! Сколько тебе лет?")
return ASK_AGE

def ask_age(update: Update, context: CallbackContext) -> int:
try:
age = int(update.message.text)
if age < 18:
update.message.reply_text("Ты еще молод, но у тебя все впереди!")
elif 18 <= age <= 60:
update.message.reply_text("Отличный возраст для достижения целей!")
else:
update.message.reply_text("Умудренный опытом! Делись мудростью с другими!")
except ValueError:
update.message.reply_text("Пожалуйста, введи число.")
return ASK_AGE
return ConversationHandler.END

def cancel(update: Update, context: CallbackContext) -> int:
update.message.reply_text("Диалог завершен. Увидимся!")
return ConversationHandler.END

def main():
# Замените 'YOUR_TOKEN_HERE' на ваш токен от BotFather
updater = Updater("YOUR_TOKEN_HERE")
dispatcher = updater.dispatcher

# ConversationHandler для обработки состояний
conv_handler = ConversationHandler(
entry_points=[CommandHandler('start', start)],
states={
ASK_AGE: [MessageHandler(Filters.text & ~Filters.command, ask_age)],
},
fallbacks=[CommandHandler('cancel', cancel)],
)

dispatcher.add_handler(conv_handler)

# Запуск бота
updater.start_polling()
updater.idle()

if __name__ == '__main__':
main()
Похожие вопросы