我只能通过用户名获得实体后获得ID实体。是一个错误吗?来自Shell
的视频我正在使用Mac和Python 3
我正在尝试通过ID
获得实体 entity = client.get_entity(1151511560)
但要有例外:
ValueError: Could not find the input entity for <telethon.tl.types.PeerUser object at 0x1172312e8>. Please read https://telethon.readthedocs.io/en/latest/extra/basic/entities.html to find out more details.
那么我成功地获得了用户名" ekat01"
的实体之后,我成功地获得了ID的实体。
为什么我不能仅通过ID获得实体?我认为这是一个错误,不是吗?
带有链接证明的视频:https://youtu.be/mndnzzir5py
github ------------------------------------------------------------------------------------------------------------------------------------------------------------
来自 Juanvelascogomez :
如果我没有错,则在文档"用户,聊天和频道,重要部分"中进行了解释:https://telethon.readthedocs.io/en/stable/stable/extable/extra/basic/entities.html
库"看到"实体后,您可以使用其整数ID。您无法使用图书馆没有看到的ID实体。您必须使库至少看到一次,并正确断开连接。您知道实体在哪里,您必须告诉图书馆。它不会为您猜测。
来自 lonami :
在干净的会话中,
with client:
try:
client.get_entity(1151511560)
except ValueError:
print('Error as expected')
client.get_entity("ekat01")
client.get_entity(1151511560)
print('Works as expected')
prints:
错误如预期按预期工作在第二次运行中,
with client:
client.get_entity(1151511560)
print('Works as expected')
prints:
按预期工作