@KiraHerschel

Как наложить одно изображение на другое в телеграмм боте?

Нужно, чтобы бот обрабатывал фото присланное пользователем и накладывал на него png файл с диска
def on_message(update, context):
        chat = update.effective_chat
        file = bot.get_file(update.message.photo[-1].file_id)
        
        vesna = Image.open('C://Users//79516//Documents//vesna.png')
        photo = Image.open(file.file_path)
        #photo.paste(vesna)
        #photo.save('C:Users//79516//Documents//photovesna.png', 'rb')
        bot.send_photo(chat_id=chat.id, photo= open('C://Users//79516//Documents//photovesna.png', 'rb'))  
        vesna.close()
        photo.close()
        context.bot.send_message(chat_id=chat.id, text="hi")

                
updater = Updater(token, use_context=True)

dispatcher = updater.dispatcher
dispatcher.add_handler(CommandHandler("start", on_start))
dispatcher.add_handler(MessageHandler(Filters.photo, on_message))

updater.start_polling()
updater.idle()

Сейчас выдает ошибку:

FileNotFoundError: [Errno 2] No such file or directory: 'photos/file_1.jpg'
  • Вопрос задан
  • 512 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Подозреваю, что file - это файловый объект, а не файл на диске. Так что file_path не соответствует никакому пути на твоей машине.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы