首页 > 解决方案 > Python TeleBot 媒体编辑

问题描述

人们!

所以,我正在使用PyTelegramBotAPI,我需要在我的机器人消息中编辑媒体(在我的情况下是照片),所以我尝试了这个东西:

bot.edit_message_media(message_id=M_ID, chat_id=C_ID, media=MY_MEDIA)

如果我尝试message.photo[0].file_id从另一条消息传递(我的意思是,照片已经在电报服务器上),或者我什至尝试InputMedia像这样从头开始创建对象:

new = types.InputMedia
new.media = message.photo[0].file_id

在这两种情况下,如果我 print file_id,它将显示这个长 id 字符串,所以它不会丢失。但我仍然收到此错误:

2020-12-23 08:22:16,889 (__init__.py:489 MainThread) ERROR - TeleBot: "A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: parameter "media" is required"

但我确实设置了媒体参数....有什么问题?

标签: pythontelegramtelegram-botpython-telegram-botpy-telegram-bot-api

解决方案


好的,我找到了解决方案。当您传递新媒体时,请这样做:

from telebot import types

bot.edit_message_media(message_id=M_ID, chat_id=C_ID, media=types.InputMediaPhoto(file_id))

这有效......哇!


推荐阅读