discord.py 如何通过 ID 删除多条消息?
In discord.py how can I delete multiple messages via ID?
我正在尝试编写一个通过消息 ID 一次删除多条消息的命令。
到目前为止,这是我的(非常基本的)代码:
@bot.command()
@commands.has_permissions(administrator=True)
async def delete(ctx, msg:discord.Message):
await msg.delete()
await ctx.message.delete()
它的问题是它只删除了第一条消息。我尝试在 msg:discord.Message 之前添加类似 ,* 的内容,使用 for 循环和类似 message.content.split 的内容,但到目前为止,我尝试的一切都没有成功,我对 discord 机器人和 python一般。
在此先感谢您的帮助。
您正朝着好的方向前进,这是您的做法:
async def delete(ctx, *messages: discord.Message):
for message in messages:
await message.delete()
注意:这不适用于不在调用命令的同一频道中的消息
我正在尝试编写一个通过消息 ID 一次删除多条消息的命令。
到目前为止,这是我的(非常基本的)代码:
@bot.command()
@commands.has_permissions(administrator=True)
async def delete(ctx, msg:discord.Message):
await msg.delete()
await ctx.message.delete()
它的问题是它只删除了第一条消息。我尝试在 msg:discord.Message 之前添加类似 ,* 的内容,使用 for 循环和类似 message.content.split 的内容,但到目前为止,我尝试的一切都没有成功,我对 discord 机器人和 python一般。
在此先感谢您的帮助。
您正朝着好的方向前进,这是您的做法:
async def delete(ctx, *messages: discord.Message):
for message in messages:
await message.delete()
注意:这不适用于不在调用命令的同一频道中的消息