1. 설치
$ pip install schedule
Installing collected packages: schedule
Successfully installed schedule-1.2.1
2. schedule 패키지 주기 설정
2-1. 시/분/초 단위 실행
# 5초에 한 번씩 함수 실행
schedule.every(5).seconds.do(함수)
# 10분에 한 번씩 함수 실행
schedule.every(10).minutes.do(함수)
# 2시간에 한 번씩 함수 실행
schedule.every(2).hours.do(함수)
2-2 일/주 단위로 실행
# 3일에 한 번씩 함수 실행
schedule.every(3).days.do(함수)
# 3주에 한 번씩 함수 실행
schedule.every(3).weeks.do(함수)
2-3 매일 정해진 시각에 실행
위에서 언급한 시,분,초,일,주 단위를 조합하여 더 디테일하게 주기 설정이 가능
# 매일 14시 30분에 함수 실행
schedule.every().day.at('14:30').do(함수)
# 매일 14시 30분 30초에 함수 실행
schedule.every().day.at('14:30:30').do(함수)
2-4 매주 정해진 요일의 특정 시각에 실행
모두 소문자로 입력 해야함 (monday,tuesday ...)
# 매주 토요일 14시에 함수 실행
schedule.every().saturday.at('14:00').do(함수)
사용 예시
# 관련 패키지 import
import schedule
import time
# 실행 함수 선언
def say_hello() -> None:
print('안녕하세요!')
# 실행 주기 설정
schedule.every(1).seconds.do(say_hello)
# 스케줄 시작
while True:
schedule.run_pending()
time.sleep(1)
인자를 받는 함수 예시
인자를 받는 함수를 사용하는 경우 아래와 같이 사용
# 관련 패키지 import
import schedule
import time
# 실행 함수 선언
def say_hello(name: str) -> None:
print(f'{name}님 안녕하세요!')
# 실행 주기 설정
schedule.every(1).seconds.do(say_hello,'leejaehyo')
# 스케줄 시작
while True:
schedule.run_pending()
time.sleep(1)