如何仅在特定时间在 Heroku 上制作 python 脚本到 运行?

How to make a python script to run only on specific time on Heroku?

我有一个 python 脚本(用 selenium 做一些事情并将结果发送到我的 what'sapp [Used Twilio API])我把它托管在 Heroku &预定 运行 one time per day。它按预期在预定时间 运行s,但在其他时间也 运行s(每天超过 6 次)。我不想 运行 除了预定的时间。我怎样才能做到 运行 只在预定的时间?

Procfile:

web: python my_script.py

除此之外,我的目录中还有 requirements.txt & my_script.py

您可以使用time模块和while循环来检查当前时间是否等于您想要的时间。

from time import gmtime, strftime
desired_time = '13:28'
while True:
    if strftime("%H:%M", gmtime()) == desired_time:
        main()

提供的答案可能是最简单的选项。这是我在个人项目中使用的。

您可以使用 APScheduler,将任务安排到 运行 的时间间隔。

from apscheduler.schedulers.background import BackgroundScheduler
def start():
    scheduler = BackgroundScheduler()
    scheduler.add_job(my_logger, 'interval', seconds=3)
    scheduler.start()