Задать вопрос
@guatemala812

Почему pyrogram не парсит caption-entities?

Ниже прикреплю код, а также его результат.

Суть вопроса: у меня есть бот, которой копирует сообщения. Если у некоего сообщения есть caption-entities, то бот отказывается их парсить по неизвестной мне причине. Передаю я их напрямую от полученного сообщения без какого-либо изменения. Ниже также прикреплю то, что передается под caption_entities (m.caption_entities, собственно)

Сам код

from pyrogram import Client
from pyrogram.types import Message
from pyrogram.types import ChatPrivileges, InputMediaPhoto, InputMediaVideo, MessageEntity

client = Client(
        name='@appname', 
        api_id='1234567', 
        api_hash='28452af6asf6sat63q97845623', 
        phone_number='987654321')
group_id = -1

@client.on_message()
async def handler(client: Client, message: Message):
    global group_id
    if group_id != -1:
        return
    group_id = message.media_group_id
    msg_group = []; media = []
    async for msg in client.get_chat_history(chat_id=message.chat.id, limit=10):
        if msg.media_group_id == group_id:
            msg_group.append(msg)
        else:
            break
    for m in msg_group:
        if m.photo:
            media.append(InputMediaPhoto(media=m.photo.file_id, caption=m.caption if m.caption else None, caption_entities=m.caption_entities if m.caption else None))
        elif m.video:
            media.append(InputMediaVideo(media=m.video.file_id, caption=m.caption if m.caption else None, caption_entities=m.caption_entities if m.caption_entities else None))
    print(media)
    await client.send_media_group(chat_id=message.chat.id, media=media[::-1])
    group_id = -1
client.run()


692c291e34b06290235546.png

И то, что возвращается под m.caption_entities

[    
    {
        "_": "MessageEntity",
        "type": "MessageEntityType.BOLD",
        "offset": 0,
        "length": 5
    }
]
  • Вопрос задан
  • 26 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    1C-разработчик
    8 месяцев
    Далее
  • Нетология
    Python-разработчик с нуля
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@guatemala812 Автор вопроса
Апдейт для всех людей с проблемой того, что какая-то функция в pyrogram работает не так, как должна.

На StackOverflow нашел вопрос где говорилось о некорректном видении каналов (), а для устранения проблемы предложили заменить либу pyrogram на pyrotgfork. Собственно сделав предложенное - все заработало.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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