반응형
안녕하세요. 하이어시스템입니다.
오늘은 파이썬으로 이메일을 발송하는 가장 간단한 방법을 설명드리며 소스코드를 공유드리도록 하겠습니다.
메일을 발송하는 방법은 다양하지만 SMTP 서버를 활용하는 방법을 사용하도록 하겠습니다. 다만 Gmail의 SMTP 서버는 보안상 제약사항이 많으므로 아주 간단한 설정으로 끝나는 네이버 SMTP 서버를 사용하도록 하겠습니다.
1단계 : 네이버 SMTP 서버 활성화
2단계 : 메일발송 함수 작성
def send_email(email_address, email_password, to_email_address, subject, contents, attach_file):
try:
server = smtplib.SMTP_SSL('smtp.naver.com', 465)
server.login(email_address, email_password)
msg = MIMEMultipart()
msg["From"] = email_address
msg["To"] = to_email_address
msg["Subject"] = subject
content_part = MIMEText(contents, "plain")
msg.attach(content_part)
file_name = os.path.basename(attach_file)
with open(attach_file, 'rb') as file:
attachment_part = MIMEApplication(file.read())
attachment_part.add_header('Content-Disposition', 'attachment', filename=file_name)
msg.attach(attachment_part)
server.sendmail(email_address, to_email_address, msg.as_string())
server.quit()
except:
print("메일 발송간 오류가 발생하였습니다.")
print(traceback.format_exc())
3단계 : 함수 호출
log라는 폴더에서 오늘자 로그파일을 첨부하여 naver STMP 서버를 활용하여 gmail로 발송하는 예시
today = datetime.now().strftime("%Y-%m-%d")
log_file_path = os.path.join(os.getcwd(), f'log/{today}.log')
send_email("highersystem@naver.com",
"패스워드입력",
"highersystem.com@gmail.com",
"C/S 자동화 프로그램 오류 로그 발송",
"오류 로그 자동발송 메일입니다. 로그를 확인하신 후 프로그램을 업데이트 하세요\n\n"+\
f"-라이선스키:{product_key}\n"+\
f"-오류발생사이트:{error_mall_list}",
log_file_path)
발송결과 확인
반응형
'파이썬코드공유' 카테고리의 다른 글
카카오 주소변환 API 사용방법 (0) | 2024.11.28 |
---|---|
Tkinter Treeview 행 높이 row height 설정하기 (0) | 2024.04.05 |
Chat GPT API 키 발급 및 정산 카드 등록하기 초간단 방법 (1) | 2024.03.11 |
문자를 이메일로 발송하기 SMS to Email 프로그램 만들기 (0) | 2024.01.30 |
[깔끔정리] 구글시트 API 키 생성하기 초간단 방법 (1) | 2024.01.26 |