Python Telethon找不到与此实体对应的任何实体

2024-04-27 17:59:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试访问一个组,并希望阅读所有的按摩。问题不是代码,问题是我得到了错误:ValueError:找不到与“鲸鱼警报”对应的任何实体。 但奇怪的是,如果我尝试使用其他会话名称,有时会奏效。有人知道我怎样才能100%得到正确的组别吗? 作为输入实体或会话名称,我还有哪些其他选项?也许这就是原因

这是我的密码:

with TelegramClient('Me', api_id, api_hash) as client:
    
    for message in client.iter_messages('Whale Alert'):
         #Do Sth

Tags: 代码实体名称clientapi密码选项错误
2条回答

当使用字符串时,telethon会检查它是否是用户名,如果不是,它会尝试从缓存中获取实体。在另一个会话中,将名称保存在缓存中

可能的解决办法:

  • 使用聊天室的用户名而不是名称
  • 使用get_dialogs()填充缓存

完整的错误从字面上告诉你要学习什么。它指向以下文档: https://docs.telethon.dev/en/latest/concepts/entities.html#summary

当试图仅通过实体ID使用实体(用户、频道、聊天室等)时,经常会遇到此错误。只有当您的会话曾经“看到”并因此缓存该实体时,此错误才会起作用。这就是为什么不同的课程可能会给你不同的结果,这并不奇怪

相关问题 更多 >