2
from apscheduler.scheduler import Scheduler
import datetime
schedudler = Scheduler(daemonic = False)



@schedudler.cron_schedule(day_of_week='0-2', hour='9-10,13-15')
#@schedudler.interval_schedule(seconds=3)
def quote_send_sh_job():
    print 'a simple cron job start at: ', datetime.datetime.now()
    print "\n"

schedudler.start()

使用上面的代码,我可以在周一至周三和“9-10,13-15”小时运行 shcedule 任务。但除了这个条件,我还希望这个任务每 3 秒运行一次。所以我设置了另一个interval_schedule。然后它工作并每 3 秒打印一次,但问题是第一个因素(天、小时)不起作用。那么你能告诉我如何实现 schedule 和 inverval 任务吗?谢谢

4

1 回答 1

1

一个基本的一天,小时 cron 示例:

>>> from apscheduler.scheduler import Scheduler
>>> sc=Scheduler()
>>> sc.start()
>>> def quote_send_sh_job():
...  print 'a simple cron job'    
... 
>>> sc.add_cron_job(quote_send_sh_job,month='7',day='24',hour='10',minute=50)

对于基于 intervel 的 cron

>>> sc.add_interval_job(quote_send_sh_job, seconds=10)#every 10 seconds

文档

于 2013-08-23T04:18:23.597 回答