You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计guild内总成员数、bot数量及人类用户数量?

暂时没有找到计算guild中总成员数、bot数量及人类用户数量的方法,目前已经可以查询到总成员数,但不知道如何分别统计bot和人类用户的各自总量。

服务器(Guild)成员分类统计实现方案

核心判断逻辑

Discord 平台的所有用户对象都内置bot布尔属性,属性值为真时代表该账号是机器人,反之则为普通人类用户,你只需要遍历服务器全量成员列表,通过该属性即可分别统计两类账号的数量。

主流开发框架代码实现

Discord.js v14 版本

  • 前置要求:已在 Discord 开发者后台开启 bot 的「Server Members Intent」权限,否则无法拉取完整的离线成员列表
  • 统计示例代码:
// guild 为已实例化的目标服务器对象
let humanCount = 0;
let botCount = 0;

guild.members.fetch().then(members => {
  members.forEach(member => {
    member.user.bot ? botCount++ : humanCount++
  })
  // 打印统计结果
  console.log('总成员数:', guild.memberCount)
  console.log('人类用户数:', humanCount)
  console.log('机器人数量:', botCount)
})

Pycord v2 版本

  • 前置要求:已在 Discord 开发者后台开启 bot 的「Server Members Intent」权限
  • 统计示例代码:
# guild 为已实例化的目标服务器对象
human_count = 0
bot_count = 0

for member in guild.members:
    if member.bot:
        bot_count += 1
    else:
        human_count += 1

# 打印统计结果
print(f"总成员数:{guild.member_count}")
print(f"人类用户数:{human_count}")
print(f"机器人数量:{bot_count}")

注意事项

  • 未开启 Server Members Intent 时拉取的成员列表仅包含在线成员和 bot 自身,统计结果会存在明显偏差
  • 总成员数可直接调用对应框架的内置属性获取,无需自行遍历统计

内容的提问来源于stack exchange,提问作者MrRed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 18:27:04