如何查看 discord.py 中已删除的邮件总数

How can I see total deleted messages in discord.py

我可以删除有一个或多个限制的消息;

@bot.command()
async def clear(ctx, amount=5):
    await ctx.channel.purge(limit=amount)
    await asyncio.sleep(1)
    await ctx.send("Deleted Message Count = BLA BLA")
    await asyncio.sleep(2)
    await ctx.channel.purge(limit=1)

如何查看已删除邮件总数? (不是数量,比如我设置限制为999时,它可以删除256条消息。

TextChannel.purge returns 它删除的邮件列表。

所以你所要做的就是:

messages = await ctx.channel.purge(limit=amount)
total_deleted = len(messages)
await ctx.send(f"Delete {total_deleted} messages")

而不是你在做什么,只需执行以下操作:

messages = await ctx.channel.purge(limit=amount)
total_deleted = len(messages)
await ctx.send(f"Delete {total_deleted} messages", delete_after=2) # delete message after 2 seconds

或者,这可以通过以下方式完成:

messages = await ctx.channel.purge(limit=amount)
total_deleted = len(messages)
message = await ctx.send(f"Delete {total_deleted} messages")
await message.delete(delay=2)