728x90
SMTP란?
- 간이 전자 우편 전송 프로토콜(Simple Mail Transfer Protocol)
- 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜이다.
- TCP 포트 번호는 25번
- 텍스트 기반의 프로토콜로 요구/응답 메시지 뿐만 아니라 모든 문자가 7bit ASCII로 되어야 한다는 규정이 있다.
- 문자 표현에 8bit 이상의 코드를 사용하는 언어나 첨부파일, 바이너리 등은 마임(MIME) 방식을 이용해 7bit로 변환하여 전달한다.
SMTP 명령
명령어 | 내용 |
HELO | SMTP를 식별하고 대화를 시작한다. (일반적으로 클라리언트의 도메인, IP 주소를 명령과 함께 전송) ex) HELO test.com |
MAIL FROM | 보낸이 메일주소 지정 ex) MAIL FROM: <test@gmail.com> |
RCPT TO | 받는이 메일주소 지정 ex) RCPT TO: <test123@naver.com> |
DATA | 본문 내용의 전송 시작 |
. |
메시지의 끝 |
RSET | 입력 초기화 |
QUIT | SMTP 연결 종료 (Close Connect) |
테스트
import smtplib
from email.mime.text import MIMEText
me = 'test1234@gmail.com' # 보낸이
you = ['test123@gmail.com'] # 메일을 받을 사람들
message = '내용' # 본문 내용
smtp = smtplib.SMTP('smtp.gmail.com', 587)
smtp.ehlo()
smtp.starttls()
smtp.login(me, 'gmail 앱 비밀번호') # 메일을 보낼 ID 로그인
msg = MIMEText(message)
msg['Subject'] = '메일제목'
msg['TO'] = ','.join(you) # you 배열을 , 로 나눔
msg['FROM'] = me
smtp.sendmail(me, you, msg.as_string())
smtp.quit()
728x90
반응형
'기타' 카테고리의 다른 글
[Windows] 한글 파일 실행 먹통 해결 (0) | 2023.06.23 |
---|