스케쥴링을 사용하면 매우 편리하게 데이터를 수집할 수 있습니다. 일정한 간격에 따라 데이터를 수집하거나, 지정한 시간에 맞게 데이터를 수집할 수 있습니다. 오늘은 스케줄러 중 하나인 APScheduler에 대해 정리하도록 하겠습니다.
from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler({'apscheduler.timezone':'UTC'})
def job_function():
print("Hello World")
sched.add_job(func = job_function, trigger='interval', hours=2)
sched.start()
BlockingScheduler({'apscheduler.timezone':'UTC'})
UTC+0 시간을 기준으로 스케줄러를 실행합니다.def job_function()
: 수행할 작업을 정의합니다.sched.add_job
: 스케줄러가 수행할 작업을 정의합니다. 위의 job은 시간마다 job_function을 수행하도록 정의했습니다.sched.add_job(job_function, 'interval', hours=2, start_date='2010-10-10 09:30:00', end_date='2014-06-15 11:00:00')
만약 정확히 특정한 날짜에 스케줄러를 실행하고 싶다면 interval 대신에 run_date 인자를 사용합니다.
#job1
sched.add_job(my_job, 'date', run_date=date(2009, 11, 6), args=['text'])
#job2
sched.add_job(my_job, 'date', run_date='2009-11-06 16:30:05', args=['text'])
#job3
sched.add_job(my_job, args=['text'])