当前位置: 首页 > 知识库问答 >
问题:

不一致py如何使bot在特定时间发送消息以执行命令

郝杰
2023-03-14

我希望我的机器人每天在特定的时间发送一条消息,运行另一个机器人的命令。例如,我想让我的机器人写“s!t"每天凌晨2点在特定频道上,并删除机器人发送的消息。我该怎么做?

共有2个答案

滕胜涝
2023-03-14

这方面已经有一个stackoverflow问题。请参阅此处以获取答案

黎同
2023-03-14

您可以使用APSchedulerCron来安排在特定时间发送邮件,如上午12:00

文档:APSchedulerCron

以下是一个例子:

#async scheduler so it does not block other events
from apscheduler.schedulers.asyncio import AsyncIOScheduler
from apscheduler.triggers.cron import CronTrigger
from discord.ext import commands
import discord

bot = commands.Bot(command_prefix="!")

async def func():
    c = bot.get_channel(channel_id)
    await c.send("s!t")

@bot.event
async def on_ready():
    print("Ready")

    #initializing scheduler
    scheduler = AsyncIOScheduler()

    #sends "s!t" to the channel when time hits 10/20/30/40/50/60 seconds, like 12:04:20 PM
    scheduler.add_job(func, CronTrigger(second="0, 10, 20, 30, 40, 50")) 

    #starting the scheduler
    scheduler.start()
 类似资料:
  • 我想创建一个不和谐机器人,每天在特定的时间发送2条消息。下面的代码将使消息进入一个循环,例如每5秒发送一条消息。我如何设置每天发送消息的具体时间,例如,消息1在下午6点,消息2在上午10点。我在这里找到了这段代码,但是没有找到我想要的。

  • 我在使用discord。py创建一个discord机器人,我需要每天在特定的时间执行某些操作。我看到了这个答案:如何在不和谐中循环。py重写?到目前为止,我一直在使用它。 当我在heroku免费计划上托管我的机器人时,问题就开始了。Heroku上的服务器每天至少重置一次,这会弄乱计时器,如该帖子所示。 我还看到了日程库。这个的问题是它似乎使用了一个无限循环。这不会阻止我在24小时内运行其他任何东西

  • 我一直在尝试使用Discord为Discord创建一个机器人。但是,当我运行程序时,它没有按预期发送消息。这是一个简单的机器人,假设每10分钟向一个频道发送一条消息。我在命令行中没有收到任何错误消息,似乎看不到任何明显的错误?任何帮助都将不胜感激。

  • 当我在twitch上开始直播时,我正试图让我的机器人向指定频道发送消息。到目前为止,我还在忙于从我的状态中获取正确的“活动”,这表示我正在流媒体。到目前为止,我得到的是: 提前感谢任何帮助!^^

  • 我想我的机器人发送该特定服务器的前缀时,它pinged(提到)。 我用谷歌搜索了它,但它不起作用(Discord.py-当它发出ping时如何生成机器人消息?) 它停止执行其他命令等。 这是我的密码 改为给我发这个消息

  • 我在我的discord机器人上遇到了一个问题。命令不起作用。我认为代码不是问题。除了命令外,一切都很完美。不和谐,如果我使用!在这里测试mytext,什么都不会发生。 提前谢谢你!