(AttributeError)client.logs_from问题

时间:2019-07-22 10:48:13

标签: discord.py

我正在为不和谐频道创建漫游器。但是我不明白我在代码中哪里写错了地方

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

@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 ^^")

我要让漫游器删除邮件

1 个答案:

答案 0 :(得分:1)

您应该使用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参数表示。

希望有帮助!