Pyrogram - 获取超过 200 个成员的频道中的所有成员

Posted

技术标签:

【中文标题】Pyrogram - 获取超过 200 个成员的频道中的所有成员【英文标题】:Pyrogram - Get all members in a channel with more than 200 members 【发布时间】:2022-01-18 23:58:31 【问题描述】:

我有一个拥有 200 多名成员的频道,我正在努力争取所有成员。

我知道 iter_chat_members 有 200 个成员的限制,所以我通过像这样增加偏移量多次调用 get_chat_members

    # Get members count
    members_count = client.get_chat_members_count(chat.id)
    # Retrieve them
    members_offset = 0
    while members_offset <= members_count:
        members = client.get_chat_members(chat.id,
                                          limit=200,
                                          offset=members_offset)
        # Do something with the members...
        members_offset += 200

但是,我继续只获得前 200 个成员(当 members_offset 大于或等于 200 时,我从 get_chat_members 获得零个成员)。

有没有办法使用多个调用从一个拥有超过 200 个成员的频道中获取所有成员?

谢谢

【问题讨论】:

200 名成员的限制是服务器端的,正如文档中提到的那样。据我记得,Telethon 有一种方法可以强制执行此操作,但这不是一个尝试规避的好主意。 好吧,那么基本上没有办法得到它们了?我什至不能打多个电话并在每次通话中获得 200 名成员,直到我全部获得他们? 【参考方案1】:

我知道一种方法,但我从未尝试过:

for member in app.iter_chat_members(YOUR_CHAT, filter="all"):
    # Do your stuff with member object

【讨论】:

以上是关于Pyrogram - 获取超过 200 个成员的频道中的所有成员的主要内容,如果未能解决你的问题,请参考以下文章

优化超过 200,000 条记录的查询

如何通过Java中的LDAP获取AD组的所有成员

日志监控文件中获取ip,每一分钟统计一次,超过200次的计入黑名单

HTC HERO 不能删除超过 200 个联系人

如果表单有超过 200 个输入字段,则自动填充/自动完成不起作用

使用 mailchimp-api-v3 批量调用不超过 10 个分段成员