如何在 discord.py 中获取所有成员列表?

2022-01-15 00:00:00 python python-3.x discord.py

问题描述

@client.command() 
async def members_info(ctx):    
    server_members = ctx.guild.members 
    data = "
".join([member.name for member in server_members if "test" in member.roles])
    embed = discord.Embed(title = f'Участники сервера', description = f"{data}", color = discord.Color.purple())

只输出带有标题和颜色的空嵌入消息,没有描述我不知道我该怎么办-_-

Output just empty embed message with title and color without description I dont know what i supposed to do -_-


解决方案

您可能缺少 members 意图.这意味着成员不会加载到缓存中,除非您执行直接 HTTP 请求.启用:

It is likely that you are missing the members intent. This means members are not loaded in cache unless you do a direct HTTP request. To enable:

首先在

第二次订阅discord.py:

Secondly subscribe in discord.py:

import discord
from discord.ext import commands

intents = discord.Intents.default()
intents.members = True
bot = commands.Bot(intents=intents, ...)

相关文章