파이썬의 기본 라이브러리를 활용하여 메일 보내는 프로그램을 짜보겠습니다. 포스팅에는 Gmail를 기준으로 작성되지만 기본적인 뼈대를 이용하여 다른 메일에도 활용하시면 되겠습니다.
사용할 라이브러리
smtplib(별도 설치x) , email(별도 설치x)

(1~7) 먼저 smtplib, email 라이브러리를 import 해주겠습니다.

(1~4) 변동값이 없을 기본적인 정보는 전역변수로 선언해줍니다. ( smtp주소, smtp 포트, 계정ID, 계정 password)

(1~5) 메일 보낼 기능 역할을 클래스 함수(GMAILSend) 작성하고, 초기화로 smtp_ssl 입력과 로그인 내용 그릇(self.msg)을 만들어 줍니다.

(1~3) 주소를 등록할 메소드를 만들어 줍니다. 보내는 사람, 받는 사람 2개의 파라미터를 입력받게 하고, 변수를 내용 그릇에 해당하는 지역 변수 self.msg 에 담아 줍니다.

(1) 제목 내용의 1개 파라미터를 갖는 메소드를 작성합니다.
(2) 메일 사용할 시간대를 현재 로컬값을 지정합니다.
(3) 파라미터로 받은 변수를 제목의 내용을 추가하고, 문자 코드값을 utf-8 으로 해주도록 합니다.

(1) 이제 본문 내용을 받는 매개변수 하나짜리 메소드를 만들고
(2~3) 형식에 맞는 텍스트로 변환후 그릇(self.msg)에 담아줍니다.

(1) 파일첨부 기능할 메소드를 작성하는데, 파일의 갯수가 복수일 수 있으니 리스트 형태로 매개변수를 받아주도록 합니다.
(2~8) 반복문을 통해 하나하나 첨부가 가능한 형태로 변환하여, 그릇(self.msg)에 추가합니다.

(1~6) 클래스 함수의 마지막 메소드로 보내는 기능과 종료 기능하는 만들어주도록 합니다.

(1~8) 필요한 5개의 정보를 받는 함수(mailSend)를 만들고, 이미 만들어 놓은 클래스 함수를 전체를 실행시키도록 작성합니다.

(1~8) 마지막 필요한 5개 정보를 변수로 입력 받고, 클래스 함수(GMAILSend)를 실행하는 함수(mailSend)에 매개변수를 담아 실행 해주도록 합니다.
참고용 코드 전문

'Programing > Python' 카테고리의 다른 글
[Python-Selenium-Chrome-RPA] 웹 사이트 자동 로그인(2) - 쿠키를 이용한 로그인 (0) | 2023.02.06 |
---|---|
[Python-Selenium -Chrome-RPA] 웹 사이트 자동 로그인(1) - 쿠키 얻기 (1) | 2023.01.16 |
[Python-Excel-RPA] 중복 제거(기존 DB 유지) (0) | 2023.01.11 |