좋아하는 드라마를 기다리다가 깜빡하고 앞부분을 놓쳐서 아쉬웠던 적 있으신가요? 매번 편성표를 검색해 보는 것도 번거로운 일인데요. 오늘은 파이썬을 활용해서 내가 좋아하는 드라마 시작 시간에 맞춰 텔레그램으로 알람을 보내주는 나만의 스마트한 비서를 만드는 방법을 소개해 드리려고 합니다.
TV 드라마(편성표) 알람 시스템 구축을 위한 준비물과 환경 설정
본격적으로 코드를 만들기 전에 몇 가지 준비해야 할 도구들이 있어요. 일상에서 자주 쓰는 도구들이라 어렵지 않게 준비하실 수 있습니다.
- 파이썬(Python) 설치: 우리 비서가 일할 수 있는 기본 환경입니다. 컴퓨터가 코드를 이해할 수 있게 해주는 기초 단계라고 보시면 돼요.
- 텔레그램 봇 토큰(Bot Token): 텔레그램에서 @BotFather라는 친구를 찾아가서 채팅을 걸면 나만의 봇을 만들고 고유한 신분증인 API 키를 받을 수 있습니다.
- 사용자 ID(Chat ID): 봇이 누구에게 알람을 보내야 할지 알아야겠죠? 내 텔레그램 계정의 고유 번호가 필요합니다.
- 서버 환경: 내 컴퓨터를 24시간 켜둘 수는 없으니 오라클 클라우드(Oracle Cloud)나 AWS 같은 가상 서버를 이용하면 좋습니다. 언제든 드라마 시간을 체크해주니까요.
필수 파이썬 라이브러리 설치하기
준비가 끝났다면 이제 필요한 도구 상자를 챙겨야 합니다. 터미널 창을 열고 아래 명령어를 입력해서 크롤링과 자동화에 필요한 패키지들을 한꺼번에 설치해 주세요.
pip install requests beautifulsoup4 python-telegram-bot apschedulerTV 방송 자동 알람이 작동하는 원리
만들 TV 방송 편성표 알람 시스템은 크게 네 가지 단계로 움직입니다.
- 데이터 소스 선정: 방송국 사이트를 일일이 들어가는 것보다 네이버나 다음의 일일 드라마 편성표 페이지를 활용하는 것이 정보를 가져오기 훨씬 편해요.
- 크롤링 로직: BeautifulSoup이라는 도구를 써서 웹페이지에서 내가 보고 싶은 드라마 제목이 있는지 찾고 그 옆에 적힌 시간을 쏙 뽑아냅니다.
- 스케줄러 설정: APScheduler를 이용하면 매일 아침 자동으로 편성표를 확인하고 드라마 시작 10분 전에 텔레그램 알림을 보내도록 예약할 수 있습니다.
- 예외 처리: 갑작스러운 결방이나 지연이 있을 때 프로그램이 멈추지 않도록 데이터가 없는 상황을 대비한 안전장치도 만들어 둡니다.
개발 순서 요약
- 1단계: 텔레그램 봇을 만들고 테스트 메시지가 잘 오는지 확인합니다.
- 2단계: 포털 사이트에서 오늘의 TV 편성표를 가져오는 코드를 짭니다.
- 3단계: 드라마 제목을 매칭해서 정확한 방송 시간을 추출합니다.
- 4단계: 정해진 시간에 알람이 울리도록 자동화 시스템을 완성합니다.
서버에 방송 알람 환경 구축하기
이제 24시간 잠들지 않는 서버에 우리 비서를 입주시켜 볼까요? 서버에 접속해서 시스템을 최신 상태로 만들고 파이썬 실행 환경을 꾸려보겠습니다.
sudo apt update && sudo apt upgrade -y
sudo apt install python3-pip python3-venv -y다른 프로그램들과 엉키지 않게 가상환경(venv)을 따로 만들어 주는 것이 관리하기 좋습니다.
mkdir ~/drama_bot && cd ~/drama_bot
python3 -m venv venv
source venv/bin/activate가상환경 안에서도 아까와 마찬가지로 필요한 라이브러리들을 설치해 줍니다.
pip install requests beautifulsoup4 python-telegram-bot apscheduler텔레그램 연동과 테스트
코드를 본격적으로 돌리기 전에 봇 토큰과 Chat ID가 맞는지 확인해야 합니다. 봇에게 인사를 건넨 뒤 아래 주소에서 본인의 ID를 확인해 보세요.
https://api.telegram.org/bot<본인의_봇_토큰>/getUpdates준비가 되었다면 이제 실제로 메시지가 오는지 테스트 코드를 실행해 봅니다.
python3 drama_bot.service.py24시간 자동 실행을 위한 TV 방송 알람 서비스 등록

서버를 껐다 켜도 봇이 알아서 다시 살아나게 하려면 서비스 파일(systemd)을 등록해야 합니다. 경로와 파일명을 정확히 입력해 주면 아주 든든한 알람 서비스가 완성됩니다.
1. 서비스 파일 설정하기
아래 명령어를 입력해 설정 파일을 만들고 내용을 채워 넣으세요.
sudo nano /etc/systemd/system/drama_bot.service[Unit]
Description=Telegram Drama Alarm Bot
After=network.target
[Service]
User=ubuntu
WorkingDirectory=/home/ubuntu/drama_bot
가상환경 내의 파이썬 경로를 직접 지정해 줍니다.
ExecStart=/home/ubuntu/drama_bot/venv/bin/python3 drama_alarm.py
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target2. 서비스 실행 및 상태 확인
이제 아래 명령어들을 하나씩 입력해서 실시간 드라마(TV 방송) 알림 서비스를 가동해 보세요.
- 시스템 설정 새로고침:
sudo systemctl daemon-reload - 부팅 시 자동 실행 설정:
sudo systemctl enable drama_bot - 지금 즉시 서비스 시작:
sudo systemctl start drama_bot - 상태 체크:
sudo systemctl status drama_bot
상태창에서 active (running)이라는 초록색 글자가 보인다면 성공입니다! 이제 매일 드라마 시작 전 텔레그램으로 오는 기분 좋은 알람을 기다리기만 하면 됩니다.

