如何在Pyrogram中编辑消息实体?解决AttributeError报错
解决Pyrogram编辑消息实体时的AttributeError问题
错误原因很明确:你传入了字典类型的消息实体,而Pyrogram的edit_message_text方法要求的是MessageEntity类的实例对象,不是普通字典,所以才会触发'dict' object has no attribute '_client'错误。
修正后的代码如下:
from pyrogram import Client, MessageEntity from pyrogram.enums import MessageEntityType async with Client("tg") as tg: await tg.edit_message_text( chat_id=board_id, message_id=123, text="Happy Birthday!", entities=[ MessageEntity( type=MessageEntityType.TEXT_LINK, offset=0, length=15, url="https://t.me/c/1234567890/123" ), ] )
关键注意点:
- 必须导入
MessageEntity类,通过它来创建实体对象,替代原来的字典写法 MessageEntityType枚举需要从pyrogram.enums模块导入,确保类型值正确- 不需要手动添加
"_": "MessageEntity"字段,实例化MessageEntity对象时会自动处理内部标识
内容的提问来源于stack exchange,提问作者jtrner
相关产品推荐
相关产品推荐

