首页 下载安装 使用教程 故障修复 功能教程 常见问答
⚡ 功能教程

我花了3天搞懂Discord Bot:从零到运行的全过程

✏️ DiscordDL 📅 2026-05-11 ⏱ 阅读约 0 分钟
我花了3天搞懂Discord Bot:从零到运行的全过程

⬇ 还没下载 Discord?

获取 2026 最新官方安装包,支持 Windows / Mac / 安卓 / iOS

立即下载 Discord

为什么我要搞Discord Bot

事情是这样的:我管理的Discord社区有200多人,每天最烦的事情就是——新人进群问同样的问题,老成员反复回答同样的答案。一天至少回答5遍"怎么设置中文"“怎么注册”。

我想要一个Bot,新人进群自动发欢迎消息和常见问题链接。就这么简单的需求,我花了3天才搞定。不是因为难,是因为网上的教程要么太深(假设你会编程),要么太浅(只教装MEE6)。

这篇记录我从零到运行Bot的全过程,包括所有踩过的坑。

Discord Bot

第1天:搞清楚Bot有几种做法

原来Discord Bot有两条路:

路线A:无代码Bot(推荐新手)。用现成的Bot平台(Dyno、MEE6、Carl-bot),不需要写任何代码,网页上点点就能配置。适合自动欢迎、自动角色分配、简单命令回复。

路线B:自己写Bot(灵活但需要编程)。用Discord API开发自己的Bot,功能完全自定义。需要用JavaScript或Python写代码,需要一台服务器运行Bot。

我的需求"新人进群自动发欢迎消息",路线A就能解决。但我选了路线B,因为我想要更灵活的定制(比如根据新人的游戏偏好自动分配角色)。

如果你只是想要简单的自动化,直接用MEE6或Dyno,10分钟搞定,不用往下看了。服务器推荐

第2天:写第一个Bot(踩了4个坑)

坑1:开发者入口找不到

Discord的开发者门户藏在 discord.com/developers/applications ,Discord主界面里没有任何入口。你要自己记住这个网址。

坑2:Bot Token泄露=账号被盗

创建Bot后会得到一个Token(一串随机字符),这是Bot的"密码"。千万不要把Token发到聊天里或上传到GitHub——有人写了个Bot把Token提交到GitHub,1小时内Bot就被陌生人控制了,在自己的服务器里发了一堆垃圾消息。

正确做法:Token保存在本地.env文件里,不提交到任何代码仓库。

坑3:Intent权限必须手动开

2022年后,Discord要求Bot手动开启"Privileged Gateway Intents"(消息内容Intent、成员Intent、在线状态Intent)。如果你的Bot需要读取消息内容或成员列表,必须在开发者门户里手动开启这些Intent,否则Bot收不到数据。

路径:开发者门户 → 你的Bot → Bot页面 → 往下翻 → 开启需要的Intent

坑4:Python环境版本冲突

我电脑上有Python 3.8和3.11两个版本,装discord.py库时装到了3.8上,结果3.11运行时找不到库。折腾了2小时才发现。

正确做法:用虚拟环境。python -m venv mybot → 激活虚拟环境 → pip install discord.py

Bot代码

第3天:让Bot 24小时在线

Bot运行在你的电脑上,关机就下线。要让Bot 24小时在线,需要把它部署到云服务器上。

免费方案

  • Replit:免费Python运行环境,但免费版Bot会在不活跃时休眠(可以用Uptime Robot定时ping来保活)
  • Railway:每月5美元免费额度,足够运行一个小Bot
  • PythonAnywhere:免费版支持定时任务,但不支持WebSocket(Discord Bot需要WebSocket长连接)

付费方案

  • VPS(腾讯云/阿里云/AWS):最稳定,最低约5美元/月。适合运行多个Bot
  • Heroku:曾经是最流行的免费方案,2022年取消免费版了,别再搜Heroku教程了

我最终选了Railway,免费额度够用,部署过程30分钟。

我的Bot最终功能

3天后,我的Bot能做这些事:

  1. 新人欢迎:新人进群自动发欢迎消息+常见问题链接
  2. 自动角色:根据新人选择的标签自动分配频道角色
  3. FAQ机器人:输入"/faq 注册"自动回复注册教程链接
  4. 定时公告:每天早上9点自动发送当日社区活动公告

代码总共不到200行Python,但因为踩了4个坑,花了3天。希望这篇能帮你少踩几个。

Bot运行

如果你觉得编程太麻烦

说实话,如果你的需求只是自动欢迎和简单命令,用MEE6就够了:

  1. 添加MEE6 Bot到你的服务器(mee6.xyz)
  2. 开启"Welcome"插件
  3. 设置欢迎消息模板
  4. 完事,10分钟搞定

不要为了用Bot而学编程——先搞清楚自己需要什么,再决定用路线A还是路线B。

最简单的Bot代码(Python,10行搞定)

如果你决定走路线B,这里是我写的最简Bot代码,连注释不到20行:

import discord
from discord.ext import commands

bot = commands.Bot(command_prefix='/', intents=discord.Intents.all())

@bot.event
async def on_member_join(member):
    channel = member.guild.system_channel
    if channel:
        await channel.send(f'欢迎 {member.mention} 加入!\n先看这里:\n1. 设置中文:设置→语言→简体中文\n2. 选择角色:#角色选择频道')

@bot.command()
async def faq(ctx, question):
    answers = {'注册': '注册教程:https://example.com/register', '中文': '中文设置:设置→语言→简体中文'}
    await ctx.send(answers.get(question, '没有找到相关FAQ,请联系管理员'))

bot.run('你的TOKEN')

这个Bot只有两个功能:新人欢迎和FAQ查询。但它覆盖了80%的常见需求。剩下的20%可以慢慢加功能。

运行方法:保存为bot.py → 安装discord.py(pip install discord.py)→ 把TOKEN换成你的 → python bot.py

Bot上线后,在Discord里输入"/faq 注册"就能触发自动回复。新人进群会自动收到欢迎消息。

如果代码看着头疼,回去用MEE6吧,不丢人。

其他Discord功能:创建服务器 / 语音聊天设置 / 邀请链接

📖 推荐阅读