如何获取僵尸服务器中的成员数量?

时间:2020-09-30 16:10:29

标签: python discord discord.py

我是制作Discord机器人的新手。

如何获取我的机器人所在的服务器中的成员总数?

2 个答案:

答案 0 :(得分:0)

所有公会:

guilds = client.guilds

所有成员:

members = 0
for guild in guilds:
    members += len(guild.members)

这将产生重复项(当人们在多台服务器中时)。如果您不想这样做,请使用set并获取其中的项目数量。

members_set = set()
for guild in guilds:
    for member in guild.members:
        members_set.add(member)
members = len(members_set)

答案 1 :(得分:0)

相对于discord.py文档,discord.ext.commands.Bot具有users属性,该属性返回其成员缓存中的所有用户的列表(由于最近的意图更改,如果在v1.5 +上运行,则您将需要启用成员意图)。

要获得唯一身份用户的数量,可以将discord.ext.commands.Bot.get_all_members()强制转换为集合。