Получение сообщения при его отправке вместе с изображением
при отправке только текстового сообщения или только изображения все работает нормально ,но если отправить боту картинку вместе с текстом, то вместо вывода текста сообщения будет "None"
@TGbot.message_handler(content_types=['text', 'photo'])
def get_text_messages(msg)
print(f"Сообщение: {msg.text}")
if msg.content_type == "photo":
photo = TGbot.get_file(msg.photo[0].file_id)
photo_path = photo.file_path
photo_id = photo.file_id
photo_type = photo.file_path.split('.')[-1]
file = TGbot.download_file(photo_path)
with open(photo_id + "." + photo_type, "wb") as code:
code.write(file)
Ответы (1 шт):
Автор решения: VitoR InA
→ Ссылка
У изображения атрибут .caption
, а у сообщения — .text
.
@TGbot.message_handler(content_types=['text', 'photo'])
def get_text_messages(msg):
if msg.content_type == "photo":
print(f"Сообщение: {msg.caption}")
photo = TGbot.get_file(msg.photo[0].file_id)
photo_path = photo.file_path
photo_id = photo.file_id
photo_type = photo.file_path.split('.')[-1]
file = TGbot.download_file(photo_path)
with open(photo_id + "." + photo_type, "wb") as code:
code.write(file)
else:
print(f"Сообщение: {msg.text}")