APScheduler
Advanced Python Scheduler 의 약자로 Python code 를 주기적으로 수행할 수 있게 도와주는 Python Library 입니다.
How to use
Python 코드 내에 작업을 예약하는 코드를 작성합니다. 제공하는 Scheduler는 다음과 같습니다.
- BlockingScheduler: 하나의 프로세스가 돌아가야할 때 사용합니다.
- BackgroundScheduler: 프레임워크에 종속되어 돌아가야하지 않거나 Background에서 돌아가야할 때 사용합니다.
- AsyncIOScheduler: AsyncIO 모듈을 사용한 앱을 스케줄링할 때 사용합니다.
- GeventScheduler: Gevent를 사용한 앱을 스케줄링할 때 사용합니다.
- TornadoScheduler: use if you’re building a Tornado application
- TwistedScheduler: use if you’re building a Twisted application
- QtScheduler: use if you’re building a Qt application
add_job()
메소드 혹은 scheduled_job()
데코레이터를 사용해 작업을 예약한 뒤, start()
메소드로 스케줄링을 시작합니다.
예약 방식은 add_job()
혹은 scheduled_job()
의 인자로 다음과 같이 선택 가능합니다.
- date: 단 한번 특정 시점에 실행할 때 사용합니다.
- interval: 특정 주기로 연속 실행할 때 사용합니다.
- cron: Crontab 형식으로 예약할 때 사용합니다.