Discord.py-如果提到特定用户,如何删除消息

Discord.py-如果提到特定用户,如何删除消息,discord.py,discord.py-rewrite,Discord.py,Discord.py Rewrite,我正在尝试制作一个on_消息事件,如果提到管理员,它将删除该消息,然后告诉他们不能这样做。这是我的密码 @bot.event async def on_message(message): admin_id = "<@496186362886619138>" if admin_id in message.content: await message.delete() await message.channel.send(&qu

我正在尝试制作一个on_消息事件,如果提到管理员,它将删除该消息,然后告诉他们不能这样做。这是我的密码

@bot.event
async def on_message(message):
admin_id = "<@496186362886619138>"
    if admin_id in message.content:
        await message.delete()
        await message.channel.send("You can't do that")
    await bot.process_commands(message)
@bot.event
异步def on_消息(消息):
admin_id=“”
如果message.content中有管理员id:
等待消息。删除()
等待message.channel.send(“你不能这么做”)
等待bot.process_命令(消息)

再次查看了文档,发现
在()和
Client.fetch\u user()中提到了
。
我的最终代码如下所示:

@bot.event
async def on_message(message):
        # DELETE ADMIN MENTION
    user = await bot.fetch_user(496186362886619138)
    if user.mentioned_in(message):
        await message.delete()
        await message.channel.send("You can't do that")
    await bot.process_commands(message)

小建议:使用
get\u user
而不是
fetch\u user
,因为
get\u user
从缓存中提取用户,并且
fetch\u use
发出请求,这可能触发速率限制,例如垃圾邮件