首页 > 解决方案 > 循环成员 - discord.py

问题描述

我正在尝试使用 discord.py 遍历服务器中的所有成员。这是我编写的一些测试代码:

@client.event
async def on_ready():
  print("bot is online!\nname: {}\nid: {}".format(client.user.name, client.user.id))
  server = client.get_guild(ID)
  print("connected to server!\nname: {}\nid: {}".format(server.name, server.id))
  members = server.members
  print("members we've found: " + str(len(members)))
  for member in members:
    print(member.name)

此代码有效,但是它仅在我正在测试的所有不同服务器上注册了大约 10-20 个成员。有人对此有解决方案吗?还是解决方法?谢谢!

标签: pythondiscord.py

解决方案


您必须等到缓存完成加载

@client.event
async def on_ready():
    await client.wait_until_ready()

    server = client.get_guild(ID)
    print("members we've found: " + str(len(server.members)))
    for member in server.members:
        print(member.name)

推荐阅读