discord.py 自动刷新嵌入

discord.py autorefresh an embed

嘿,我正在制作一个多用途的 discord 机器人,我有一个 cog 可以 ping 一个 minecraft 服务器并获取信息和 id 喜欢让它每分钟左右更新一次。

代码:https://haste.discordbots.mundane.nz/dudosavipa.py

此代码在值更改的情况下对其进行编辑一次,但之后它在不更改值的情况下进行编辑。感谢任何帮助

您可以使用 discord.ext.tasks 以更好的方式完成此操作。

import discord
from discord.ext import commands, tasks

class Mcstats(commands.Cog):
    def __init__(self, bot):
        self.bot = bot
    
    @commands.Cog.listener()
    async def on_ready(self):
        self.channel = self.bot.get_channel(channel_id_of_the_message)
        self.message = await self.channel.fetch_message(message_id)
        self.task.start()
    
    @tasks.loop(minutes=1)
    async def task(self):
        #retrieving data and creating embed
        await self.message.edit(embed=your_embed) #editing message