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

Проблема с кодом на python

Mr Legion Ученик (99), на голосовании 1 месяц назад
писал код для телеграм бота по одному гайду (токен скрыл)

вот код:

 import cv2
import numpy as np
from PIL import Image
from io import BytesIO
from telegram import Update
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext

# Функция для определения доминирующего цвета
def get_dominant_color(image):
pixels = np.array(image)
pixels = pixels.reshape(-1, 3)
unique_colors, counts = np.unique(pixels, axis=0, return_counts=True)
dominant_color = unique_colors[counts.argmax()]
return tuple(dominant_color)

# Функция для обработки изображений
def process_image(update: Update, context: CallbackContext):
file = context.bot.getFile(update.message.photo[-1].file_id)
file.download('image.jpg')

# Открываем изображение и получаем доминирующий цвет
image = Image.open('image.jpg')
dominant_color = get_dominant_color(image)

# Отправляем результат обратно пользователю
update.message.reply_text(f'Доминирующий цвет: RGB{dominant_color}')

# Основная функция запуска бота
def main():
updater = Updater("Token telegram bot", use_context=True)

dp = updater.dispatcher

dp.add_handler(MessageHandler(Filters.photo, process_image))

updater.start_polling()
updater.idle()

if __name__ == '__main__':
main()

выдает ошибку, вот ошибка:

Traceback (most recent call last):
File "D:\Python\bot_image.py", line 40, in
main()
File "D:\Python\bot_image.py", line 30, in main
updater = Updater("Token telegrm bot", use_context=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Updater.__init__() got an unexpected keyword argument 'use_context'

помогите разобраться
Голосование за лучший ответ
aaa bbb Знаток (278) 2 месяца назад
проблема: Updater.__init__() got an unexpected keyword argument 'use_context'
Хлебушек Оракул (76354) 2 месяца назад
Насколько старый гайд? Вероятно, у тебя новая версия библиотеки стоит, где были какие-то изменения.

Читай актуальную документацию по этому методу класса.
 updater = Updater("Token telegram bot", use_context=True) 
Волк Чёрный Ученик (130) 2 месяца назад
попробуй вместо пробелов нижние подчёркивания
Похожие вопросы