Telethon 获得没有管理员权限的频道参与者

Telethon get channel participants without admin privilages

我正在使用 telethon 来处理自定义应用程序上的客户端。我想做的是显示订阅某个电报频道的人员列表。这是设置:

from telethon import TelegramClient, events, sync

api_id = 8045283
api_hash = 'ad63dec5ee12u8baca534620d5b3d725' #not real btw
client = TelegramClient('name', api_id, api_hash)
await client.start()

在此之后我尝试了像 client.get_participants(channel) 这样的函数,其中 returns 错误:

ChatAdminRequiredError: Chat admin privileges are required to do that in the specified chat (for example, to send a message in a channel which is not yours), or invalid permissions used for the channel or group (caused by GetParticipantsRequest)

还有 await client(GetFullChannelRequest(channel=channel)),只是没有所需的信息。

我以为这个 API 正是为了创建自定义客户端而创建的,但是如果无法实现基本功能,这怎么可能呢?谁能就如何实现这一目标提出建议?也许另一种获取此类数据的方法?

好吧,我实际上混淆了这里的术语。即使在官方应用程序上,Telegram 也不会显示频道的参与者(如果您不是管理员),但是,对于群组,get_participants 方法非常有效

async for dialog in client.iter_dialogs():
        if  dialog.is_channel:
       
            print( dialog.entity.participants_count)

这是您无需成为管理员即可让参与者计数的方法