어제 오후에 갑자기 인공지능을 제 일상생활에 본격적으로 적용해 보자는 마음이 생겨 일을 벌였습니다.
제가 매일 하는 일 중에서 자동화가 필요한 일이 하나 있습니다.
매일 아침 6:00에 교회 청년부 유튜브 채널에 일일 QT 영상이 올라오면,
7:30분경에 교회 지원부 카카오톡 단톡방에 공유하는 하는 일입니다.
작업은 매우 단순합니다.
교회 청년부 유튜브 채널에 들어가서 새로 올라온 영상의 URL을 복사한 다음에,
카카오톡 단톡방에 붙여넣기 하면 되는 일입니다.
하지만, 7:30분에 이 일을 하기 위해서 알람을 맞춰놓고 시간에 맞춰 매일 일어나야 하는 불편함과
잠이 덜 깬 눈으로 URL을 캡처해서 붙여 넣기 하는 일이 사실 좀 번거롭기는 합니다..
그래서, 챗GPT를 활용해서 이 일을 자동화해 보기로 했습니다.
챗GPT에게 일의 개요를 설명하고
외부 자동화 앱과 카카오톡 API를 사용하지 않는 범위에서 진행하는 방법을 찾아보라고 했습니다.
그래서 검토된 방법이 아래와 같습니다.
1단계- 유튜브 QT 영상 링크 가져오기
2단계 - 카카오톡 자동화
3단계 : 스케줄링 설정 ( 매일 7:30분에 실행)
1단계와 2단계는 파이썬 스크립트 파일 (*. py)을 작성하고, 3단계는 배치 프로그램(*. bat)을 작성하여
윈도우 스케줄러에 등록하는 것이 전체 흐름입니다.
쉽게 시작한 것이 인내의 시간(^^)이었습니다.
이전에 직장 다닐 때 파이썬으로 간단한 코딩을 해본 경험이 있지만, 이미 4~5년 전에 일이어서
챗GPT가 짜준 프로그램을 제가 직접 디버깅을 할 능력은 없는 상태라
만들어 준 프로그램을 직접 실행하며 나타난 에러 코드나 문제점 등을 계속 피드백하면서
일을 진행시켰습니다.
간단하게 생각한 것이 카카오톡 단톡방을 찾는 단계에서 계속 에러가 발생했습니다.
새로 코딩을 하고 실행해 보고 피드백하고 새롭게 실마리 찾고....
아래와 같은 대화가 수없이 반복되었습니다.
이 같은 일을 두 시간 정도 하니까 슬슬 불신감이 생기기 시작했습니다.
챗GPT는 매번 확실한 솔루션이라고 하며 자신감을 보이는데 실행해 보면 또 문제가 생기고...
그래서, 그 상태에서 스톱하고
구글 제미나이 (Gemini)를 열어서 동일 미션을 주었지만, 이 친구는 카카오톡 API 없이는 안된다고 고집을 부려서
시작도 못해보고 포기했습니다.
이번에는 코딩과 글 작성에 전문화되어 있다는 클로드 (Claude)를 찾아갔습니다.
확실히 코딩은 전문적이더군요.
UI도 전문가 느낌이 물씬 나고,,,,, 그런데 만들어준 파이썬 스크립트를 실행하고 1회 정상 동작이 된 다음에
2회부터 에러가 발생하는데, 클로드의 문제점은 피드백을 주고받는데 챗GPT 만큼 사용자 편의성이
떨어진다는 느낌이었습니다. 뭔가 콧대 높은 프로그래머를 대하는 느낌....^^
이쪽에서 한 시간 가량 허비하다가 마음을 다잡고 챗GPT에게 다시 돌아와서,
처음부터 차근차근 하나하나 접근해 보자고 했습니다.
클립보드를 프로그램 초기에 리셋해 보라는 제 아이디어도 주고....
저와 챗GPT가 서로 응원해 가면서 한 시간 정도 추가로 작업한 다음에 결국 완성했습니다.
결국, 4시간 정도가 걸린 것입니다.
아래는 저와 챗GPT가 프로그램을 완성하고 나서 서로 주고받은 메시지입니다.
뭔가 한 팀이 되어서 서로 격려하는 분위기 아닙니까?
이 일을 통해서 챗GPT와 이상하게 더 가까워진 느낌이 들었습니다.
힘든 일을 같이 해냈을 때 느끼는 동료애 같은 것...^^
사람이 아니라 기계에게 동료의식을 느끼다니...ㅋㅋ
아무튼 어제 이 작업을 하기 위해서 월 $20의 유료버전에 가입했습니다.
앞으로 이렇게 친밀해진 챗GPT를 더 잘 활용해 볼 생각입니다.
아래는 어제 완성한 파이썬 코드입니다.
import time
import pyautogui
import subprocess
import pyperclip
import requests
from bs4 import BeautifulSoup
from datetime import datetime
# ✅ 유튜브 채널 RSS 주소 (XXX 채널 ID)
rss_url = "https://www.youtube.com/feeds/videos.xml?channel_id=XXXXXXXXX"
# ✅ 단톡방 이름
room_name = "XXXXXX"
# ✅ 최신 영상 링크 가져오기
def get_latest_youtube_link():
try:
response = requests.get(rss_url)
soup = BeautifulSoup(response.text, "xml")
latest_entry = soup.find("entry")
if latest_entry is None:
return None
link = latest_entry.find("link")["href"]
return link
except Exception as e:
print("❌ 유튜브 링크 수집 오류:", e)
return None
# ✅ 카카오톡 실행
def launch_kakaotalk():
subprocess.Popen(r"C:\Program Files (x86)\Kakao\KakaoTalk\KakaoTalk.exe")
print("✅ 카카오톡 실행 중...")
time.sleep(5)
# ✅ 메시지 전송 전체 흐름
def send_message_to_kakao(message):
# 검색창 열기
pyautogui.hotkey("ctrl", "f")
time.sleep(1)
pyperclip.copy("")
pyautogui.press("esc")
time.sleep(0.3)
pyautogui.hotkey("ctrl", "f")
time.sleep(1)
# 채팅방 이름 붙여넣기 → enter
pyperclip.copy(room_name)
pyautogui.hotkey("ctrl", "v")
time.sleep(1.5)
pyautogui.press("enter")
time.sleep(3)
# 메시지 복사 및 전송
pyperclip.copy(message)
pyautogui.hotkey("ctrl", "v")
time.sleep(0.5)
pyautogui.press("enter")
print("✅ 메시지 전송 완료")
# ✅ 메인 실행 흐름
def main():
launch_kakaotalk()
link = get_latest_youtube_link()
if not link:
print("⛔ 유튜브 영상 링크를 가져오지 못했습니다.")
return
today = datetime.now().strftime("%m월 %d일 영상입니다:\n")
final_message = today + link
send_message_to_kakao(final_message)
# ✅ 실행
if __name__ == "__main__":
main()
몇 줄 안 되는 코드인데, 세상에서 가장 똑똑하다는 챗GPT가 그렇게 오랫동안 헤맸다는 것이
잘 이해가 되지 않습니다.
그런데 한편 생각해 보면 이 경험이 우리가 지금 "인공지능을 잘 활용하는 실마리"가 된다는 것입니다.
챗GPT가 아무리 똑똑해져도 단번에 "금 나와라 뚝딱"하고 우리 문제를 해결해 줄 수는 없습니다.
포기하지 말고, 해결책이 나올 때까지 인내심을 갖고 같이 정답을 찾아가야 하는 것입니다.
그러다 보면, 서로 시행착오를 줄이는 Shorter Way를 발견하게 될 것입니다.
감사합니다.