📅  最后修改于: 2023-12-03 15:09:14.713000             🧑  作者: Mango
在 Discord 中,每位用户都有一个唯一的用户 ID,它可以用来标识用户。在编写 bot 的时候,有时需要获取用户的 ID,本篇文章将介绍如何在 discord.py 中获取用户 ID。
每一条消息都有一个作者,我们可以通过 message.author.id
获取该消息的作者 ID。下面是一个获取消息作者 ID 的例子:
import discord
client = discord.Client()
@client.event
async def on_message(message):
if message.content.startswith('!hello'):
author_id = message.author.id
await message.channel.send(f'Hello <@{author_id}>!')
这段代码中,我们使用 message.author.id
获取发送消息的用户的 ID。
如果我们想要获取一个 Discord 服务器中某个成员的 ID,可以通过 member.id
获取。下面是一个获取成员 ID 的例子:
import discord
client = discord.Client()
@client.event
async def on_member_join(member):
member_id = member.id
await member.guild.system_channel.send(f'Welcome <@{member_id}> to the server!')
这段代码中,我们使用 member.id
获取新加入成员的 ID。
如果我们已经知道了用户的名称或者标识符,可以使用 client.get_user(user_id)
获取该用户的对象。然后,我们就可以使用 user.id
获取该用户的 ID。下面是一个获取用户对象 ID 的例子:
import discord
client = discord.Client()
@client.event
async def on_ready():
user = client.get_user(id)
user_id = user.id
print(f'The user ID is: {user_id}')
这段代码中,我们使用 client.get_user(user_id)
获取一个用户对象,然后使用 user.id
获取该对象的 ID。
上述方法可以帮助我们获取 Discord 用户的 ID,让我们能够在编写 bot 的时候更加灵活地处理用户行为。