# 이메일을 보내기 위한 smtplib 모듈을 import 한다
import smtplib
# 이메일에 이미지를 첨부하기 위한 모듈들을 import 한다
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
COMMASPACE = ', '
# 이메일 메세지 컨테이너를 만든다
msg = MIMEMultipart()
msg['Subject'] = 'Our family reunion'
# me == 보내는 사람의 주소
# family = 받는 사람들의 모든 주소
msg['From'] = me
msg['To'] = COMMASPACE.join(family) # join 함수로 받는 사람들의 주소를 합친다
msg.preamble = 'Our family reunion'
# 전송하고자 하는 이미지 파일들이 모두 PNG 파일이라고 가정하자
for file in pngfiles:
# 바이너리 모드로 전송할 파일들을 연다.
# MIMEImage 클래스가 자동으로 이미지의 타입을 알아낼 것이다.
fp = open(file, 'rb')
img = MIMEImage(fp.read())
fp.close()
msg.attach(img)
# 위와 같은 형태로 멀티파트에 MIME 부품을 추가하는 식으로 더 많은 정보를 넣을 수 있다
# MIMEText 등도 추가할 수 있다.
# 로컬 서버를 통해 메일을 보낸다.
s = smtplib.SMTP('localhost')
s.sendmail(me, family, msg.as_string())
s.quit()
# 로컬 SMTP 서버가 없을 경우 계정이 있는 다른 서버를 사용하면 된다.
s = smtplib.SMTP_SSL('smtp.gmail.com',465)
s.login("아이디", "비밀번호")
s.sendmail(me, you, msg.as_string())
s.quit()