我正在尝试编写代码以删除我的Discord机器人的所有Discord频道

时间:2019-11-25 02:46:37

标签: python discord

我正在尝试制作自己的Xenon版本,并且需要能够删除服务器中的所有通道。 有人可以帮忙吗?

async def d(ctx):    
    time.sleep(2)
    for i in range (0,100000000):
        await ctx.guild.delete_text_channel(type=discord.ChannelType.text)

这是我的尝试之一,但出现错误“ AttributeError:'Guild'对象没有属性'delete_text_channel'”

1 个答案:

答案 0 :(得分:0)

假设您使用的是最新版本,则GuildChannel对象具有一个delete coroutine。因此,您可以遍历Guild.channels并删除每一个:

@commands.has_permissions(manage_channels=True)
@bot.command()
async def delete_all(ctx):
    for channel in ctx.guild.channels
        try:
            await channel.delete()
        except (discord.Forbbiden, discord.NotFound, discord.HTTPException) as e:
            print("Could not delete channel {name} for reason {e}")