获取电报组的所有用户
Posted
技术标签:
【中文标题】获取电报组的所有用户【英文标题】:Get all users of telegram group 【发布时间】:2018-12-05 14:22:09 【问题描述】:我正在尝试,我看到方法getChatAdministrators,但我认为API没有获取所有成员的方法。
我正在使用 nodejs 的电报-bot-api
【问题讨论】:
【参考方案1】:Telegram Bot API:
您尝试归档的内容目前无法使用 bot api。我不确定 nodejs api,但官方 bot api(您的实现可能会使用)目前不允许获取有关所有成员的特定信息。
不过,您可以使用getchatmemberscount 查询当前组中有多少用户。如果您拥有某个组成员的用户 ID,则可以通过 getchatmember function 获取有关该用户的更多信息。
Telegram API:
使用 Telegram API,您可以控制“常规”用户如何控制机器人。如果您决定使用此 API,任何其他用户都不会看到您的帐户是自动化的;事实上,官方电报应用程序使用它作为他们的后端。但是,您需要像使用普通帐户一样使用您的电话号码进行注册。
使用此 API,您可以使用 getChats function 轻松查询机器人所在的所有聊天记录。然后,您可以使用getFullChat 查询特定聊天的完整聊天信息(包括所有用户及其详细信息)。
【讨论】:
如何调用api?抱歉,在 getFullChat 的情况下,我无法弄清楚如何使用 chat_id【参考方案2】:Telegram Bot API 不提供此类功能,唯一有效的方法是使用 userbot(在常规 Telegram 帐户下运行的机器人)。
【讨论】:
【参考方案3】:你的问题解决了吗?我使用电报机器人 api 的 GetChatMemberCount 方法来获取组的成员数。而且我还可以使用bot api来获取向组发送消息的用户信息。我怀疑是否有任何其他方法可以在没有bot api的情况下获取成员数。
【讨论】:
【参考方案4】:您可以使用 Telethon 提取任何给定组或频道的所有成员(您需要成为频道管理员),您可以使用 Telethon,您可以在这里找到它:- https://github.com/LonamiWebs/Telethon
Telethon 提取给定组的所有成员并将其保存在 SQLite 数据库中。
【讨论】:
怎么样?也许使用 Telethon 的例子会很好。或者至少指向文档中的确切部分,而不是整个存储库。此外,这并不能仅使用机器人来回答问题。 Telethon 必须以普通电报用户身份登录。以上是关于获取电报组的所有用户的主要内容,如果未能解决你的问题,请参考以下文章