discord.py |如何获取列表用户名和id

discord.py |如何获取列表用户名和id,discord.py,Discord.py,不和谐 被我禁止的用户,我想看到被禁止的用户和id的列表,以从用户中删除禁令 !银行名单 -对于版本0.16.12中禁用用户名和id的列表,您可以使用它返回用户对象列表。然后,您可以遍历列表并从每个用户处获取id和名称。如果您想让机器人列出被禁止的用户名和ID,您可以执行以下操作: bannnedUsers = await client.get_bans(serverID) for user in bannedUsers: await client.send_message(channe

不和谐

被我禁止的用户,我想看到被禁止的用户和id的列表,以从用户中删除禁令

!银行名单

-对于版本0.16.12中禁用用户名和id的列表,您可以使用它返回用户对象列表。然后,您可以遍历列表并从每个用户处获取id和名称。如果您想让机器人列出被禁止的用户名和ID,您可以执行以下操作:

bannnedUsers = await client.get_bans(serverID)
for user in bannedUsers:
    await client.send_message(channelID, user.name + ' ' + user.id)
bans = await guild.bans()
for ban in bans:
    await channel.send(ban[0].name + ' ' + ban[0].id)
在重写分支中,它稍微复杂一些。您可以使用获取元组列表,其中每个元组包含一个用户对象和一个带有禁止原因的字符串。为了获得与之前相同的结果,您可以执行以下操作:

bannnedUsers = await client.get_bans(serverID)
for user in bannedUsers:
    await client.send_message(channelID, user.name + ' ' + user.id)
bans = await guild.bans()
for ban in bans:
    await channel.send(ban[0].name + ' ' + ban[0].id)

值得一提的是,bot需要ban_用户权限才能访问这些协同路由。

discord.ext.commands.errors.CommandInvokeError:Command引发了一个异常:name错误:未定义名称“guild”
error如果要使用它,需要定义guild。这应该是最重要的。您很可能需要使用ctx.guilddiscord.ext.commands.errors.CommandInvokeError:Command引发了一个异常:AttributeError:“Context”对象没有属性“guild”
@bot.Command(pass_Context=True)async def banlist(ctx):bans=wait ctx.guild.bans(),用于bans:wait channel.send(ban[0].name+''+ban[0].id)
您最有可能使用的是discord.py版本0.16.12,而不是重写。尝试使用我的初始消息的前半部分,忽略后半部分。您可以通过在命令行中键入
pipshowdiscord.py
来检查正在使用的版本