Форум сайта python.su
Добрый день!
Подскажите пожалуйста как решить ошибку в коде.
Код:
from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup
from telegram.ext import Updater, CommandHandler, CallbackContext, MessageHandler
import random
def start(update: Update, context: CallbackContext):
“”“Обработчик команды /start.”“”
update.message.reply_text('Привет! Я бот для раздачи бонусов.')
def bonus(update: Update, context: CallbackContext):
“”“Обработчик команды /bonus.”“”
bonus_amount = random.randint(1, 100) # Генерация случайного бонуса
update.message.reply_text(f'Ваш бонус: {bonus_amount}')
def statistics(update: Update, context: CallbackContext):
“”“Обработчик команды /statistics.”“”
# Ваш код для вывода статистики
update.message.reply_text('Здесь будет статистика.')
def handle_message(update: Update, context: CallbackContext):
“”“Обработчик сообщений.”“”
text = update.message.text.lower()
if text == ‘бонус’:
bonus(update, context)
elif text == ‘статистика’:
statistics(update, context)
def main():
# Инициализация бота
updater = Updater(“6276353212:AAFOGVMfhCcgsNEJ0JSiYLVJGCNaVRPyq9I”)
dispatcher = updater.dispatcher
# Обработчики команд
dispatcher.add_handler(CommandHandler(“start”, start))
dispatcher.add_handler(CommandHandler(“bonus”, bonus))
dispatcher.add_handler(CommandHandler(“statistics”, statistics))
# Обработчик сообщений
dispatcher.add_handler(MessageHandler(None, handle_message))
# Запуск бота
updater.run(token=“6276353212:AAFOGVMfhCcgsNEJ0JSiYLVJGCNaVRPyq9I”)
if __name__ == ‘__main__’:
main()
Вот ошибка:
TypeError Traceback (most recent call last)
<ipython-input-4-5cadf6af2313> in <cell line: 44>()
43
44 if __name__ == ‘__main__’:
—> 45 main()
46
47
<ipython-input-4-5cadf6af2313> in main()
28 def main():
29 # Инициализация бота
—> 30 updater = Updater(“6276353212:AAFOGVMfhCcgsNEJ0JSiYLVJGCNaVRPyq9I”)
31 dispatcher = updater.dispatcher
32
TypeError: Updater.__init__() missing 1 required positional argument: ‘update_queue’
Ни как не могу понять почему, заранее всем большое спасибо за помощь!
Офлайн
from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup from telegram.ext import Updater, CommandHandler, CallbackContext, MessageHandler import random def start(update: Update, context: CallbackContext): """Обработчик команды /start.""" update.message.reply_text('Привет! Я бот для раздачи бонусов.') def bonus(update: Update, context: CallbackContext): """Обработчик команды /bonus.""" bonus_amount = random.randint(1, 100) # Генерация случайного бонуса update.message.reply_text(f'Ваш бонус: {bonus_amount}') def statistics(update: Update, context: CallbackContext): """Обработчик команды /statistics.""" # Ваш код для вывода статистики update.message.reply_text('Здесь будет статистика.') def handle_message(update: Update, context: CallbackContext): """Обработчик сообщений.""" text = update.message.text.lower() if text == 'бонус': bonus(update, context) elif text == 'статистика': statistics(update, context) def main(): # Инициализация бота updater = Updater("6276353212:AAFOGVMfhCcgsNEJ0JSiYLVJGCNaVRPyq9I") dispatcher = updater.dispatcher # Обработчики команд dispatcher.add_handler(CommandHandler("start", start)) dispatcher.add_handler(CommandHandler("bonus", bonus)) dispatcher.add_handler(CommandHandler("statistics", statistics)) # Обработчик сообщений dispatcher.add_handler(MessageHandler(None, handle_message)) # Запуск бота updater.run(token="6276353212:AAFOGVMfhCcgsNEJ0JSiYLVJGCNaVRPyq9I") if __name__ == '__main__': main()
Офлайн
ОШИБКА
TypeError Traceback (most recent call last) <ipython-input-4-5cadf6af2313> in <cell line: 44>() 43 44 if __name__ == '__main__': ---> 45 main() 46 47 <ipython-input-4-5cadf6af2313> in main() 28 def main(): 29 # Инициализация бота ---> 30 updater = Updater("6276353212:AAFOGVMfhCcgsNEJ0JSiYLVJGCNaVRPyq9I") 31 dispatcher = updater.dispatcher 32 TypeError: Updater.__init__() missing 1 required positional argument: 'update_queue'
Офлайн