ML
python으로 naver 이메일 발송하기
selfstarter
2019. 8. 8. 22:34
python으로 naver 이메일 발송하기
naver메일 설정
- IMAP/SMTP 를 사용할 수 있도록 naver 메일 설정에서 POP3/IMAP설정 - IMAP/SMTP 설정으로 들어가서 IMAP/SMTP 사용함으로 체크한다(곧바로 허용은 안되고 몇분정도 있어야 메일보내기에 성공한다)
- POP3와 IMAP은 메일을 받는 프로토콜. SMTP은 메일을 보내는 프로토콜.
Pythond으로 naver 이메일 전송
- id는 naver id(mail 안붙여야함), password는 naver password를 입력한다
- smtp TLS를 사용하여 메일을 발송한다.(587)
- smtp.ehlo() 함수로 통신 전 응답이 가능한지 확인한다(암호화x)
- smtp.starttls() TLS 통신을 시작한다(암호화 시작)
- 하나 이상의 내용을 담으려면 MIMEMultipart를 사용
import smtplib, os
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
id = ''
password = ''
sendEmail = ''
subject = 'testMail'
text = 'hello world~!'
addrs = [sendEmail] # send mail list
# login
smtp = smtplib.SMTP('smtp.naver.com', 587)
smtp.ehlo()
smtp.starttls()
smtp.login(id, password)
# message
message = MIMEMultipart()
message.attach(MIMEText(text))
# Send
for addr in addrs:
message["From"] = sendEmail
message["To"] = addr
message['Subject'] = subject
smtp.sendmail(sendEmail, addr, message.as_string())
smtp.quit()