on_message_edit 自身循环 discord.py 重写 v1.3.4
on_message_edit looping on itself discord.py rewrite v1.3.4
这是我的代码 -
@client.event
async def on_message_edit(before, after):
channel = client.get_channel(724859369732177953)
guild = client.get_guild(716816535309516840)
embed = discord.Embed(title=f"{guild.name}", description=f"**{before.author.mention} edited a message in - {before.channel.mention}**\n**Old -**\n ```\n {before.content}\n```\n**New -**\n```\n{after.content}\n```", color=0x40cc88,)
embed.set_thumbnail(url=guild.icon_url)
embed.set_footer(text=guild.name)
await channel.send(embed=embed)
return
当我编辑一条消息时,bot 发送的第一个嵌入是正确的,但它一直在一次又一次地发送嵌入,直到我退出该过程,这是屏幕截图-
非常感谢任何帮助。
在活动开始时检查它是否由机器人触发。你可以这样做:
@client.event
async def on_message_edit(before, after):
if before.author == client.user:
return
channel = client.get_channel(724859369732177953)
...
如果机器人编辑了一条消息,那将 return。否则它将按预期执行代码。
这是我的代码 -
@client.event
async def on_message_edit(before, after):
channel = client.get_channel(724859369732177953)
guild = client.get_guild(716816535309516840)
embed = discord.Embed(title=f"{guild.name}", description=f"**{before.author.mention} edited a message in - {before.channel.mention}**\n**Old -**\n ```\n {before.content}\n```\n**New -**\n```\n{after.content}\n```", color=0x40cc88,)
embed.set_thumbnail(url=guild.icon_url)
embed.set_footer(text=guild.name)
await channel.send(embed=embed)
return
当我编辑一条消息时,bot 发送的第一个嵌入是正确的,但它一直在一次又一次地发送嵌入,直到我退出该过程,这是屏幕截图-
非常感谢任何帮助。
在活动开始时检查它是否由机器人触发。你可以这样做:
@client.event
async def on_message_edit(before, after):
if before.author == client.user:
return
channel = client.get_channel(724859369732177953)
...
如果机器人编辑了一条消息,那将 return。否则它将按预期执行代码。