SMTP로 메일 보내기(GMail)

2019. 4. 21. 20:26파이썬

** SMTP 서버 접속
import smtplib

smtp = smtplib.SMTP('smtp.gmail.com', 587)
type(smtp)
smtp = smtplib.SMTP_SSL('smtp.gmail.com', 564)

**SMTP에게 "Hello" 메시지 보내기
smtp.ehlo()

**TLS 암호화 시작
smtp.starttls() #SMTP_SSL로 설정되었을 때는 사용하지 않는다.

**SMTP서버에 로그인
smtp.login('my_email_address@gmail.com', 'PASSWORD')

**이메일 보내기
smtp.send_message(msg) #EmailMessage 객체 msg 사용

****EmmailMessage 타입의 객체 사용하기
from email.message import EmailMessage
msg = EMailMessage()

msg['Subject'] = '제목'
msg['From'] = 'sender@mail_addr.com'
msg['To'] = 'recv1@mail_addr.com, recv2@mail_addr.com'
msg.set_content('본문 내용, 여러라인 가능')


**SMTP 서버 접속 끊기
smtp.quit()


 

---------------------------------------------------------------------------------------------------

 

 

import smtplib
from email.message import EmailMessage

smtp = smtplib.SMTP_SSL('smtp.gmail.com', 465)

smtp.ehlo()

smtp.login('sender@gmail.com', 'password')

msg = EmailMessage()
msg['Subject'] = '제목입니다'
msg['From'] = 'sender@gmail.com'
msg['To'] = 'receiver@appsosystem.com'
msg.set_content('''
본문입니다.
    여러줄도 가능합니다.
    띄워쓰기도 가능합니다.
{}님 받으십시오.
'''.format('동글이')



send_status = smtp.send_message(msg)
if send_status != {}:
    print('{}에게 메일 전송 실패 : {}'.format('동글이', send_status)


smtp.quit()



--------------------------------------------------------------------------------------------------------

 

참고로 google에서 SMTP 메세지를 보내기 위해서는 아래와 같이 설정해줘야 함