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

Discord机器人无法获取服务器全部用户,仅返回自身ID求助

Discord机器人仅能获取自身用户ID的修复方案

问题根源:Intents权限配置错误

你代码里client.members = True的写法完全无效。Discord的网关意图(Intents)要求必须在初始化Intents对象时明确开启成员权限,否则机器人只能读取到自己的信息,无法获取服务器内的其他成员。

修正后的完整代码

import discord

# 正确初始化Intents并开启成员获取权限
intents = discord.Intents.default()
intents.members = True

client = discord.Client(intents=intents)

@client.event
async def on_ready():
    server = client.get_guild(985156775152087053)
    if server:
        for member in server.members:
            print(member)
    else:
        print("指定服务器不存在,请核对服务器ID是否正确")

client.run("你的机器人Token")

关键额外步骤

必须在Discord开发者后台开启服务器成员特权意图:

  • 登录Discord开发者平台,进入你的机器人应用页面
  • 切换到「Bot」标签页
  • 在「Privileged Gateway Intents」板块,开启「Server Members Intent」选项

另外要确保机器人在目标服务器中拥有查看成员的基础权限,避免因服务器权限限制导致无法获取成员列表。

内容的提问来源于stack exchange,提问作者Ian Jaylo Guinto

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 11:15:28