728x90
반응형

 티스토리 

 

smtplib 라이브러리를 사용한 예제

 파일을 첨부하여 대량으로 메일 보내는 코드를 알아 봅시다.

 

1. 코드리뷰

 

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication

def send_email(send_email, send_pwd, recv_email, subject, body, attachment_path):
    # Create message
    msg = MIMEMultipart()
    msg['Subject'] = subject
    msg['From'] = send_email
    msg['To'] = recv_email

    # Attach body
    text = MIMEText(body)
    msg.attach(text)

    # Attach file
    with open(attachment_path, 'rb') as file:
        attachment = MIMEApplication(file.read())
        attachment.add_header('Content-Disposition', 'attachment', filename="abcd.txt")
        msg.attach(attachment)

    # Connect to SMTP server and send email
    with smtplib.SMTP('smtp.gmail.com', 587) as server:
        server.starttls()
        server.login(send_email, send_pwd)
        server.sendmail(send_email, recv_email, msg.as_string())

# 사용 예시
send_email(
    send_email="보내는메일",
    send_pwd="비밀번호",
    recv_email="받는메일",
    subject="메일보내기 테스트입니다.",
    body="첨부파일과 함께 몌일 보내기.\n감사합니다.",
    attachment_path=r'c:\xxx\abcd.txt'
)
    msg.attach(rb_file)

s=smtplib.SMTP( smtp_name , smtp_port )
s.starttls()
s.login( send_email , send_pwd )
s.sendmail( send_email, recv_email, msg.as_string() )
s.quit()

마무리

- 이번 포스팅은 smtplib로 메일보내는 앱 만들기 에 대해 알아봤습니다.

 

궁금한 사항은 댓글을 통해서 남겨 주시면 답변 드리겠습니다.
감사합니다.

 

 

728x90
반응형

+ Recent posts