SMTP 프로토콜을 사용해 이메일을 전송하고 수신할 수 있는 메일 서버
ASCII가 아닌 문자 인코딩을 이용해 영어가 아닌 다른 언어로 된 전자 우편을 보낼 수 있는 방식
# 이메일 보내기 앱
import smtplib # 메일 전송 프로토콜
# SMTP 프로토콜을 사용해 이메일을 전송하고 수신할 수 있는 메일 서버
from email.mime.text import MIMEText # ASCII가 아닌 문자 인코딩을 이용해 영어가 아닌 다른 언어로 된 전자 우편을 보낼 수 있는 방식
send_email = 'dltnwls9988@naver.com'
send_pass = 'tnwls4792@' # 깃허브엔 올리지말자
recv_email = 'dltnwls0987522@gmail.com'
smtp_name = 'stmp.naver.com'
smtp_port = 587 # 포트번호
text = '''메일 내용입니다. 긴급입니다.
조심하세요~ 빨리 연락주세요!!'''
msg = MIMEText(text)
msg['Subject'] = '메일 제목입니다.'
msg['From'] = send_email # 보내는 메일
msg['To'] = recv_email # 받는 메일
print(msg.as_string())
# 이메일 보내기 앱
import smtplib # 메일 전송 프로토콜
# SMTP 프로토콜을 사용해 이메일을 전송하고 수신할 수 있는 메일 서버
from email.mime.text import MIMEText # ASCII가 아닌 문자 인코딩을 이용해 영어가 아닌 다른 언어로 된 전자 우편을 보낼 수 있는 방식
send_email = 'dltnwls9988@naver.com'
send_pass = '*********' # 깃허브엔 올리지말자
recv_email = 'dltnwls0987522@gmail.com'
smtp_name = 'smtp.naver.com'
smtp_port = 587 # 포트번호
text = '''메일 내용입니다. 긴급입니다.
조심하세요~ 빨리 연락주세요!!'''
msg = MIMEText(text)
msg['Subject'] = '메일 제목입니다.'
msg['From'] = send_email # 보내는 메일
msg['To'] = recv_email # 받는 메일
print(msg.as_string())
mail = smtplib.SMTP(smtp_name,smtp_port) # SMTP 객체생성
mail.starttls() # 전송계층보안 시작
mail.login(send_email,send_pass)
mail.sendmail(send_email,recv_email,msg=msg.as_string())
mail.quit()
print('전송완료!')
스팸 메일 보낼 리스트 엑셀로 만들기
코드 작성
# 대량 메일 전송
from openpyxl import load_workbook # pip install openpyxl
wbook = load_workbook('./StudyPython/SpamMailList.xlsx',data_only=True)
wsheet = wbook.active # sheet1 선택
for i in range(1, wsheet.max_row+1):
recv_email = wsheet.cell(i,1).value
print(recv_email)
# 대량 메일 전송
from openpyxl import load_workbook # pip install openpyxl
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
wbook = load_workbook('./StudyPython/SpamMailList.xlsx',data_only=True)
wsheet = wbook.active # sheet1 선택
for i in range(1, wsheet.max_row+1):
recv_mail = wsheet.cell(i,1).value
print(recv_mail)
try:
# 실제 메일전송 로직
send_mail = 'dltnwls9988@naver.com'
send_pass = 'tnwls7522' # 깃허브에 올리지 말자
smtp_name = 'smtp.naver.com'
smtp_port = 587
msg = MIMEMultipart()
msg['Subject'] = '엑셀에서 보내는 메일!!'
msg['From'] = send_mail
msg['To'] = recv_mail
msg.attach(MIMEText('보내는 내용입니다. 집가고싶다!'))
mail = smtplib.SMTP(smtp_name,smtp_port) # 객체생성
mail.starttls() #보안
mail.login(send_mail,send_pass)
mail.sendmail(send_mail,recv_mail,msg.as_string())
mail.quit()
print(f'전송성공 : {recv_mail}')
except Exception as e:
print(f'수신메일 - {recv_mail}')
print(f'전송에러 : {e}')