如何创建频道 on_ready discord.py?

时间:2021-01-11 17:56:12

标签: python discord discord.py

我试图在机器人启动时创建来频道。我希望他们在 on_ready 函数中创建。但是 await guild.create_text_channel("Channel") 本身需要公会。通常当我想通过命令创建它时,我会做这样的事情:

@client.command()
async def create(ctx):
    guild = ctx.guild
    await guild.create_text_channel(name="test channel")```

But I need ctx to create guild. So the question is: How do I create a channel without ctx? 

1 个答案:

答案 0 :(得分:1)

你只需要获得一个 discord.Guild 实例,你可以使用 Bot.get_guild

async def on_ready():
    await client.wait_until_ready()

    guild = client.get_guild(id_here)
    await guild.create_text_channel(name="whatever")

如果您想在机器人所在的所有公会中创建频道,您可以循环访问 client.guilds

async def on_ready():
    await client.wait_until_ready()

    for guild in client.guilds:
        await guild.create_text_channel(name="whatever")

参考: