You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么Telethon调用get_entity(id)时报错缺失必填参数'entity'

错误原因

get_entity 是 TelegramClient 类的实例方法,必须通过已初始化完成的客户端实例调用,不能直接通过类名调用。你使用 TelegramClient.get_entity(secret.chat_id) 方式调用时,Python会将第一个传入的secret.chat_id识别为类实例参数,判定你缺少必填的查询目标entity参数,因此触发类型错误。

解决方案

将调用get_entity的对象替换为你已经初始化好的client实例即可,修改后可运行代码如下:

from telethon import TelegramClient
import secret
client = TelegramClient('opentfd_session', secret.api_id, secret.api_hash).start()
chat_admin = client.get_entity(secret.chat_id)

如果采用异步编码模式,需要对异步方法添加await关键字,完整示例:

import asyncio
from telethon import TelegramClient
import secret

async def main():
    client = TelegramClient('opentfd_session', secret.api_id, secret.api_hash)
    await client.start()
    chat_admin = await client.get_entity(secret.chat_id)
    # 此处添加后续业务逻辑
    await client.disconnect()

asyncio.run(main())

内容的提问来源于stack exchange,提问作者krutmaster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 18:27:04