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

discord.py开发中如何删除Discord服务器内的分类?

Discord 机器人删除服务器分类功能实现方案

Discord 中分类(Category)属于GuildChannel的子类,删除逻辑和普通文本/语音频道逻辑接近,注意提前给机器人开通Manage Channels(管理频道)权限,同时在开发者后台开启服务器相关的意图权限即可。以下是两种主流开发库的实现方案:


1. 基于discord.py(Python)实现

import discord
from discord.ext import commands

intents = discord.Intents.default()
intents.guilds = True # 必须开启服务器访问意图
bot = commands.Bot(command_prefix="!", intents=intents)

@bot.command()
async def delete_all_categories(ctx, guild_id: int):
    # 获取指定服务器对象
    guild = bot.get_guild(guild_id)
    if not guild:
        await ctx.send("未找到指定服务器")
        return
    # 遍历服务器内所有分类
    for category in guild.categories:
        try:
            # 可选操作:先删除分类下的所有子频道,不需要可以删掉这段
            for channel in category.channels:
                await channel.delete()
            # 删除分类本身
            await category.delete()
        except discord.Forbidden:
            await ctx.send(f"没有权限删除分类 {category.name}")
        except Exception as e:
            await ctx.send(f"删除分类 {category.name} 时出错: {str(e)}")
    await ctx.send("所有分类及关联子频道已删除完成")

注意:如果需要批量操作避免触发速率限制,可以在每次删除后加await asyncio.sleep(0.5)做延时


2. 基于discord.js(JavaScript/TypeScript)实现

const { Client, GatewayIntentBits } = require('discord.js');
const client = new Client({
  intents: [
    GatewayIntentBits.Guilds,
  ]
});

async function deleteAllCategories(guildId) {
  const guild = await client.guilds.fetch(guildId);
  if (!guild) return console.log('未找到指定服务器');
  // 过滤出所有分类(分类的channel类型枚举值为4)
  const categories = guild.channels.cache.filter(channel => channel.type === 4);
  for (const [id, category] of categories) {
    try {
      // 可选操作:先删除分类下的所有子频道,不需要可以删掉这段
      for (const [channelId, channel] of category.children.cache) {
        await channel.delete();
      }
      // 删除分类本身
      await category.delete();
    } catch (err) {
      console.log(`删除分类${category.name}失败:`, err);
    }
  }
  console.log('所有分类删除完成');
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 07:27:02