(属性错误)client.logs_from的问题



我正在为不和谐频道创建机器人。但是我不明白我的代码在哪里错误或错误

我是从教程中做的,但在视频中这个错误不存在。然后我在另一个教程中搜索这个问题,但我没有结果请帮助

@client.command(pass_context=True, name='clear', aliases=['purgemessages'], no_pm=True)
async def clear(ctx, number):
    number = int(number)
    if number > 99 or number < 1:
        await ctx.send("Sorry comrade>-< n But i can deleted message within a range of 1 - 99")
    else:
        author = ctx.message.author
        authorID = author.id
        mgs = []
        number = int(number)
        channel = ctx.message.channel
        async for x in client.logs_from((channel), limit = int(number)):
            mgs.append
        await ctx.message.channel.delete_messages(ctx, member, mgs)
        await ctx.send("This was deleted ^^")

我希望机器人删除消息

你应该

使用client.purge()来做到这一点。

您似乎正在寻找一种删除命令调用者消息的方法(又名 author (。

下面是使用purge()方法的快速示例:

author = ctx.message.author
# check function
def is_caller(message):
   if(message.author.id == author.id):
      return(True)
   else:
      return(False)
# delete the author's messages
# the purge method returns a list of deleted messages
deleted_message = await client.purge(
   limit = number,
   check = is_caller
)
await ctx.send(f"{len(deleted_message)} messages deleted.")

限制由命令的 number 参数表示。

希望它有帮助!

相关内容

最新更新