【问题标题】:Problem with iter message in telethon, trange error outputTelethon 中的 iter 消息出现问题,错误输出异常
【发布时间】:2020-10-27 23:28:50
【问题描述】:

昨天晚上一切正常,但我在今天早上尝试了相同的脚本,我得到了这个错误输出。我有这个获取消息的代码。

async def get_mess():
    limit = 1
    global new
    async for message in client.iter_messages('Passive Lifestyle Forex Signals', limit):
        new = message.text
        return message

ValueError:找不到与“被动生活方式”对应的任何实体 外汇信号"

频道名称是正确的,昨天晚上脚本还在运行,但现在不行了。如果他们没有重命名它,我正在检查电报频道,但它是相同的。我试图重新安装 Telethon 并删除会话文件。我在不同的频道上尝试过,但没有一个频道有效。你认为你知道问题出在哪里吗?如果是,请告诉我。我正在使用最新的电视马拉松版本。 我正在使用最新版本的 Telethon。

【问题讨论】:

  • 只传递 ID 或用户名
  • 用户名是什么意思?链接末尾的那个东西?
  • 我已经通过此 [链接](stackoverflow.com/a/66720906/8514920) 中的示例展示了您的问题的解决方案

标签: python python-asyncio telegram valueerror telethon


【解决方案1】:

根据Documentation

当需要“类实体”的东西时,这意味着您需要提供可以变成实体的东西。这些内容包括但不限于用户名、确切的标题、ID、Peer 对象,甚至整个 User、Chat 和 Channel 对象,甚至是您联系人列表中的人的电话号码。

只需传递您的频道用户名passivelifestlyeforex 或整个链接t.me/passivelifestlyeforex 而不是确切的标题。该库将调用请求的 .resolve() 方法,该方法将解析“用户名”。一旦库“看到”了实体,您就可以使用其他“类似实体”的变体。

async def get_mess():
    limit = 1
    global new
    async for message in client.iter_messages('passivelifestlyeforex', limit):
        new = message.text
        return message

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-13
  • 1970-01-01
  • 2010-12-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-16
相关资源
最近更新 更多