pythonapscheduler

APScheduler options


I'm trying to schedule programmatically some jobs with Advace Python Scheduler, my problem is that in the documentation it is only mentioned how to schedule with 'interval' trigger type, what about 'cron' and 'date'. Is there any complete documentation about scheduling options of APScheduler?

For instance:

#!/usr/bin/env python

from time import sleep 
from apscheduler.scheduler import Scheduler

sched = Scheduler()
sched.start()        

# define the function that is to be executed
def my_job(text):
    print text

job = sched.add_job(my_job, 'interval', id='my_job', seconds=10, replace_existing=True, args=['job executed!!!!'])

while True:
        sleep(1)

How I can schedule based on 'date' or 'cron'

I'm using latest APScheduler version 3.0.2

Thanks


Solution

  • sched.add_job(my_job, trigger='cron', hour='22', minute='30')
    

    Means call function 'my_job' once every day on 22:30.

    APScheduler is a good stuff, but lack of docs, which is a pity, you can read the source codes to learn more.

    There is some more tips for you:

    1. use *

      sched.add_job(my_job, trigger='cron', second='*') # trigger every second.
      
    2. some more attributes

      {'year': '*', 'month': 1, 'day': 1, 'week': '*', 'day_of_week': '*', 'hour': 0, 'minute': 0, 'second': 0}
      

    And in my opinion, cron job can replace date jobs in most situations.