【问题标题】:PYTHON DISCORD.PY how to delete messages of a mentioned userPYTHON DISCORD.PY 如何删除提及用户的消息
【发布时间】:2021-05-13 11:10:32
【问题描述】:

我正在尝试创建一个不和谐机器人(作为朋友的巨魔),如果在我的服务器中发送消息: '!'+(用户提及)。 从那时起,它将删除提及的用户将发送的每条消息。正如您可能看到的那样,我是个菜鸟,并且在代码方面遇到了麻烦。

@client.event
async def on_message(message):
    if message.author != client.user and message.content == "!"+str({mention}):
 
        @client.event
        async def on_message(message):
            if message.author.name == {mention} and message.author != client.user:
                await message.delete()
                

我有几个问题...

我怎样才能让机器人仅在我提到用户时才删除用户的消息?

我应该给机器人什么样的指示才能停止删除用户的消息?

非常感谢您的帮助!感谢您的宝贵时间(:

【问题讨论】:

    标签: python discord


    【解决方案1】:

    嗯,其实很简单。由于discord.Message 对象有一个名为mentions 的属性,因此您可以从消息中以列表的形式获取提及的用户。

    喜欢mentions = message.mentions。因此,您可以在mentions 列表中运行一个循环,并检查mentions 中的任何成员在其他情况下是否是您的朋友或目标成员,如果是,那么您可以做您的事情。

    此外,如果您在清除频道中某人的消息方面需要帮助,您可以使用 purge() 方法并检查其参数,更多关于 here 的信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-30
      • 2018-10-22
      • 2020-09-07
      • 2021-09-26
      • 1970-01-01
      • 2018-04-29
      相关资源
      最近更新 更多