我真的很难理解如何使用Telegram api和telethon。我在Telegram中有一些频道,我想要删除较旧的消息。使用inputpeerchannel()我需要channel_id(没问题)和channel_hash。我无法找到如何通过channel_id获取此channel_hash。谢谢你来自德国
答案 0 :(得分:1)
要查找频道access_hash
,您应该解析频道用户名。原始MTProto方法contacts.resolveUsername#f93ccba3
获取@username并返回包含access_hash
的频道信息。
在telethon中,你需要调用ResolveUsernameRequest来调用上面的原始MTProto方法。您可以使用此代码将用户名解析为access_hash
:
client = TelegramClient(session_file, api_id=00000, api_hash='XXXXX')
client.connect()
response = client.invoke(ResolveUsernameRequest("your_channel_id"))
print(response.chats[0].access_hash)
client.disconnect()
答案 1 :(得分:1)
有四种获取访问哈希的方法:
因此,如果只有ID,就无法获取访问哈希值