본문 바로가기

Python/실습

[파이썬으로 영화 예매 오픈 알리미 만들기] 3. 스케쥴러

APScheduler 설치

영화 알리미를 일정한 간격으로 지속적으로 실행시키는 기능을 수행하려 한다.

이를 스케쥴러라고 한다.

 

다양한 라이브러리가 있는데

우리는 APScheculer을 사용하기로 한다.

> pip install apscheduler

https://apscheduler.readthedocs.io/en/stable/userguide.html

 

User guide — APScheduler 3.6.3 documentation

Configuring the scheduler APScheduler provides many different ways to configure the scheduler. You can use a configuration dictionary or you can pass in the options as keyword arguments. You can also instantiate the scheduler first, add jobs and configure

apscheduler.readthedocs.io

 

이 중 우리는 하나의 프로세스를 사용하는 BlockingScheduler을 사용할 것이다.

https://apscheduler.readthedocs.io/en/stable/modules/schedulers/blocking.html#apscheduler.schedulers.blocking.BlockingScheduler

 

apscheduler.schedulers.blocking — APScheduler 3.6.3 documentation

Introduction BlockingScheduler is the simplest possible scheduler. It runs in the foreground, so when you call start(), the call never returns. BlockingScheduler can be useful if you want to use APScheduler as a standalone scheduler (e.g. to build a daemon

apscheduler.readthedocs.io

 

 

 

알리미에 스케쥴러 추가하기

예제 코드를 참고해서 파이썬 코드를 다시 작성해보자.

https://github.com/agronholm/apscheduler/blob/master/examples/schedulers/blocking.py

 

agronholm/apscheduler

Task scheduling library for Python. Contribute to agronholm/apscheduler development by creating an account on GitHub.

github.com

이렇게 하면 30초에 한번씩 확인하여 메세지를 전송할 것이다.

 

 

 

조건에 따라 스케쥴러 중단하기

스케쥴러를 멈추는 방법pause() 라는 메소드를 사용하면 된다.

 

코드를 다음과 같이 수정하자.

 

이상으로 간단한 파이썬을 이용한 영화예매 오픈 알리미 실습

 

끝!