如何使用 discord.py 在 Discord 服务器中创建成员列表?

How can I make a list of members in a Discord server using discord.py?

我正在尝试使用 discord.py 生成 discord 服务器中所有成员的列表。这是我的代码:

import discord
from discord.ext import commands


class Events(commands.Cog):
    def __init__(self, client):
        self.client = client

    def get_member_names(self):
        for guild in self.client.guilds:
            for member in guild.members:
                yield member.name

    @commands.Cog.listener()
    async def on_ready(self):
        await self.client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching,
                                                                    name="the Chat."))
        print('Bot has logged in as {0.user.name}'.format(self.client))

        people = set(self.get_member_names())
        print(people)

def setup(client):
    client.add_cog(Events(client))

问题是我只得到服务器中机器人的名称,但没有任何用户,如何解决?

在成员列表中只看到您的机器人的一个常见原因是您没有为您的机器人启用特权意图。请参阅 this page 了解如何为您的机器人启用此功能。