“매일 엑셀 파일 만들고 메일로 보내는 작업, 자동으로 안 될까?”
이번 편에서는 파이썬으로
1. 데이터를 읽고
2. 엑셀 보고서를 생성한 뒤
3. 자동으로 메일에 첨부해서 발송
하는 **완성형 자동화 파이프라인**을 만들어봅니다.

✅ 1. CSV 파일 읽기 & 요약 보고서 만들기
import pandas as pd
df = pd.read_csv("data/매출.csv")
# 날짜별 매출 합계 요약
summary = df.groupby("날짜")["금액"].sum().reset_index()
summary.columns = ["날짜", "총매출"]
# 엑셀 저장
summary.to_excel("output/매출요약.xlsx", index=False)
📌 포인트
- `groupby`로 요약하고 `to_excel`로 저장
- 엑셀 저장 시 `index=False` 꼭 추가
---
✅ 2. 이메일 자동 발송 (첨부 포함)
import smtplib
from email.message import EmailMessage
msg = EmailMessage()
msg["Subject"] = "일일 매출 보고서"
msg["From"] = "you@example.com"
msg["To"] = "team@example.com"
msg.set_content("첨부된 파일은 오늘 매출 요약입니다.")
# 첨부파일 추가
with open("output/매출요약.xlsx", "rb") as f:
file_data = f.read()
msg.add_attachment(file_data, maintype="application", subtype="vnd.openxmlformats-officedocument.spreadsheetml.sheet", filename="매출요약.xlsx")
# 발송
with smtplib.SMTP_SSL("smtp.gmail.com", 465) as smtp:
smtp.login("you@example.com", "앱비밀번호")
smtp.send_message(msg)
📌 발송 시 주의사항
- Gmail은 앱 비밀번호 필요
- 다른 메일 서비스는 SMTP 주소/포트 다를 수 있음
---
✅ 3. 실전 자동화 응용 예시
- 매일 CSV로 저장되는 매출, 로그, 방문자 수 통계 등 자동 보고
- 월말 엑셀 요약 후 회계팀 메일 자동 발송
- 웹 크롤링 → 엑셀 요약 → 메일까지 완전 자동 루틴
---
✅ 마무리 요약
✔ CSV 읽기 → pandas
✔ 요약 & 저장 → to_excel
✔ 메일 발송 → email + smtplib
✔ 첨부파일 포함 메일까지 완성!
다음 11편에서는 **자동 스케줄링 (정해진 시간에 자동 실행)** 기능까지 이어갑니다.
'PYTHON > 중급학습' 카테고리의 다른 글
| [중급 9편] 파이썬으로 자동 메일 보내기.zip (0) | 2025.05.14 |
|---|---|
| [중급 8편] CSV & 엑셀 파일 자동 처리.zip (0) | 2025.05.14 |
| [중급 7편] 파이썬으로 폴더 만들기 & 파일 자동 정리.zip (0) | 2025.05.14 |
| [중급 6편] 파일 입출력 고급편과 예외 안전 처리.zip (0) | 2025.05.13 |
| [중급 5편] 클래스 상속과 다형성 실전.zip (0) | 2025.05.13 |