【发布时间】:2021-03-30 12:00:03
【问题描述】:
仍在开发我的第一个 python 项目(discord bot)
终于让我的第一个任务运行起来了,它的工作完美无缺。
现在我想创建第二个任务,每 x 小时删除一次频道历史记录。
我当前的“清除”事件只是这样的命令:
@bot.command(name='deleteme', help='testing command for dev use')
async def purge(ctx, limit=1, member: discord.Member=None):
await ctx.message.delete()
msg = []
try:
limit = int(limit)
except:
return await ctx.send("Please pass in an integer as limit")
if not member:
await ctx.channel.purge(limit=limit)
return await ctx.send(f"Purged {limit} messages", delete_after=3)
当我使用“!deleteme”命令时它运行良好,但到目前为止我试图将它放入任务中的一切都失败了。
也许你们有一些想法,我怎样才能让它发挥作用。
编辑。
对于遇到相同问题的每个人来说,这是我完美的解决方案。
@tasks.loop(seconds=898)
async def __purge():
message_channel = bot.get_channel(target_channel_id)
if str(message_channel) == "YOURCHANNELNAME":
await message_channel.purge(limit=200)
【问题讨论】:
标签: python-3.x discord.py