💡 Python 코드로 일괄 메일 보내기
- 행정업무를 하다보면 수십명 많게는 수백명의 사람에게 이메일을 보내야하는 경우가 있다. 나도 인턴 생활을 할때 약 240여명이나 되는 사람들을 크라우드소싱(crowdsourcing)으로 모집했던 적이 있었고, 사업이 끝나는 시점에 개개인에게 필요한 자료를 보내야 했던 일이 있었다.
❓문제 상황
- 보내야하는 파일은 원천징수영수증이였고(개인정보문제로 파일 암호화 필요), 개인마다 받는 정보, 파일이 달랐음
📌 해결 방법
- 엑셀 파일을 통해 개인정보 정리 (이메일 주소/ 작업자 아이디(식별 번호) / 이름 / 첨부파일 경로)

- Outlook 연동하는 코드 작성
import pandas as pd
#엑셀 파일 경로
df = pd.read_excel(r'C:\Users\pc\Desktop\이메일 전송\\이메일 리스트.xlsx')
cnt=0
for i in range(df.shape[0]):
try:
cnt+=1
outlook=win32com.client.Dispatch("Outlook.Application")
Txoutlook = outlook.CreateItem(0)
Txoutlook.To = df.iloc[i][0]
Txoutlook.Subject = "메일 제목"
Txoutlook.HTMLBody = """n
<html>
<body lang=KO style='tab-interval:40.0pt;word-wrap:break-word'>
<div class=WordSection1>
<p class=MsoNormal>안녕하세요 %s님</p>
</div>
</body>
</html>
Txoutlook.Attachments.Add(attachment)
Txoutlook.Send()
except:
print(df.iloc[i][2])
print(cnt)