Discord.py如何获取所有审核日志的列表?

时间:2020-04-04 11:23:43

标签: discord.py discord.py-rewrite

我正在寻找一种将所有审核日志打印在txt文件上的方法,因为我希望然后该机器人将该txt文件发送到管理员的电子邮件中。如何获得所有审核日志?

1 个答案:

答案 0 :(得分:0)

您使用async for ... in guild.audit_logs(limit=100) 该函数具有更多不同的参数,您可以找到所有这些参数here

以下是使用方法的示例:

async def save_audit_logs(guild):
     with open(f'audit_logs_{guild.name}', 'w+') as f:
          async for entry in guild.audit_logs(limit=100):
               f.write('{0.user} did {0.action} to {0.target}'.format(entry))

@client.event
async def on_message(message):
     if message.content.startswith('audit'):
         await save_audit_logs(message.channel.guild)

其他信息: 这是一个异步迭代器,这意味着它只能只能在异步函数中使用

每个审核日志条目都是this class,我建议对其进行仔细阅读。