You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Discord用户的4位用户ID?含消息内获取咨询

如何获取Discord用户的4位鉴别码(Discriminator)及从消息中提取它

嘿,我来帮你理清这个问题——首先得明确一下,你说的这个4位数字其实叫做鉴别码(Discriminator),和Discord的用户ID(那串更长的数字ID)是两回事哦。下面分两种场景给你解答:

一、手动获取用户的4位鉴别码

如果你只是在Discord客户端里查看普通用户的鉴别码,非常简单:

  • 直接看用户昵称后面的#xxxx后缀,比如你提到的PruinaTempestatis#8487,其中的8487就是这位用户的4位鉴别码;
  • 要是用户昵称显示不全,右键点击用户头像,选择「查看资料」,在资料卡的用户名下方就能看到完整的用户名#鉴别码组合。

二、从消息中获取鉴别码(开发/机器人场景)

如果是开发Discord机器人,想要从收到的消息里提取发送者的4位鉴别码,不同开发框架的实现方式如下:

1. 使用Discord.js(JavaScript/TypeScript)

在消息事件中,通过message.author.discriminator直接获取:

client.on('messageCreate', (message) => {
  // 跳过机器人自身发送的消息(可选)
  if (message.author.bot) return;
  
  const userDiscriminator = message.author.discriminator;
  console.log(`消息发送者的4位鉴别码:${userDiscriminator}`);
  // 输出示例:8487
});

2. 使用discord.py(Python)

在消息回调事件里,通过message.author.discriminator获取:

import discord
from discord.ext import commands

intents = discord.Intents.default()
intents.message_content = True
client = commands.Bot(command_prefix='!', intents=intents)

@client.event
async def on_message(message):
    # 跳过机器人消息(可选)
    if message.author.bot:
        return
    
    user_discriminator = message.author.discriminator
    print(f"消息发送者的4位鉴别码:{user_discriminator}")
    # 输出示例:8487
    
    await client.process_commands(message)

client.run('你的机器人Token')

补充说明:现在Discord已经推出了无鉴别码的用户名系统,但老用户仍会保留原有的4位鉴别码,上述方法对所有带有鉴别码的用户均有效。

内容的提问来源于stack exchange,提问作者Pruina Tempestatis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:18:28