Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 생일 알림 애플리케이션 만들기

이 글에서는 파이썬(Python)을 활용해 생일 알림 애플리케이션을 만드는 방법을 단계별로 살펴봅니다.

문제 정의

파이썬으로 오늘 날짜에 해당하는 생일이 있는지 자동으로 확인하고, 생일인 사람이 있다면 그 사람의 이름과 함께 시스템 알림(notification)을 보내는 애플리케이션을 만들어 보겠습니다.

이를 위해서는 날짜·월·사람 이름을 저장해 둘 조회용 파일(lookup file)이 필요합니다. 파일 형식은 다음과 같습니다.

파이썬으로 생일 알림 애플리케이션 만들기

또한 이 애플리케이션을 시작 프로그램(startup application)으로 등록하면, 시스템이 부팅될 때마다 자동으로 실행되어 매일 아침 오늘의 생일자를 알려줄 수 있습니다.

애플리케이션 구현 절차

  • 조회용 파일을 열어 내용을 읽어 들입니다.
  • 파일에 기록된 날짜와 월이 오늘 날짜와 일치하는지 확인합니다.
    • 오늘이 생일인 모든 사람의 이름을 담아 시스템에 알림을 전송합니다.
  • 종료합니다.

예제 코드

import os, time
# 홈 디렉터리에서 생일 조회 파일 경로 가져오기
file_path = os.getenv('HOME') + '/birth_day_lookup.txt'
def check_birthday():
   lookup_file = open(file_path, 'r') # 조회 파일을 읽기 모드로 열기
   today = time.strftime('%d-%B') # 오늘 날짜를 dd-Month 형식으로 가져오기
   bday_flag = 0
   # 생일 파일의 각 항목을 순회하며 오늘 날짜가 있는지 확인
   for entry in lookup_file:
      if today in entry:
         line = entry.split(' ') # 공백 기준으로 잘라 이름과 성을 추출
         bday_flag = 1
         os.system('notify-send "Today is '+line[1]+' '+line[2]+'\'s Birthday"')
   if bday_flag == 0:
      os.system('notify-send "No birthday for today is listed"')
check_birthday()

실행 결과

파이썬으로 생일 알림 애플리케이션 만들기

시작 프로그램으로 등록하는 방법

1단계 − chmod 명령어로 스크립트 파일을 실행 가능한 파일로 변환합니다.

sudo chmod +x file_name.py

2단계 − 스크립트 파일을 /usr/bin 디렉터리로 이동시킵니다.

sudo cp file_name.py /usr/bin

3단계 − 시스템에서 'Startup Applications'(시작 응용 프로그램)를 검색하여 실행합니다.

파이썬으로 생일 알림 애플리케이션 만들기

애플리케이션을 연 후 'Add(추가)' 버튼을 클릭하고, 원하는 이름을 입력한 뒤 명령어(command) 필드에 프로그램 이름을 지정합니다. 그리고 시작 프로그램으로 추가하면 설정이 완료됩니다.

파이썬으로 생일 알림 애플리케이션 만들기

이렇게 하면 컴퓨터를 켤 때마다 스크립트가 자동으로 실행되어, 소중한 사람의 생일을 놓치지 않고 알려주는 편리한 생일 알림 시스템을 완성할 수 있습니다.