我是制作Discord机器人的新手。
如何获取我的机器人所在的服务器中的成员总数?
答案 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()
强制转换为集合。