파이썬의 smtp모듈을 이용하여 메일을 보낼 수 있다. 내가 네이버 메일을 많이 쓰기에, 또 네이버는 설정이 필요해서 네이버로 메일 보내는 예제만 적었다.(구글은 설정 없이 메일 받기가 가능하다.)
1. 네이버 메일 설정.
1)메일로 들어가서 아래의 환경설정으로 들어간다.
2) 아래처럼 설정해준다.
2. 파이썬을 이용해서 내 메일로 메일을 보내 본다.
구글링해서 나온 소스코드를 사용했다.
# -*- encoding: cp949 -*- import smtplib gmail_user = '본인 메일주소.' #본인 네이버 메일. asdfasfas@naver.com과 같은 형식으로 입력한다. gmail_pwd = '비밀번호' #본인 네이버 계정 비밀번호 입력. FROM = gmail_user TO = ['qkqhxla1@naver.com'] #보낼 메일 주소. SUBJECT = '성공'.encode('utf-8') #한글을 보내려면 반드시 utf-8로 인코딩해야합니다. TEXT = "Hello!" # Prepare actual message message = """\From: %s\nTo: %s\nSubject: %s\n\n%s """ % (FROM, ", ".join(TO), SUBJECT, TEXT) try: server = smtplib.SMTP("smtp.naver.com", 587) server.ehlo() server.starttls() server.ehlo() server.login(gmail_user, gmail_pwd) server.sendmail(FROM, TO, message) server.close() print 'successfully sent the mail' except smtplib.SMTPException: print "failed to send mail"
3. 제대로 메일이 보내졌음을 알 수 있다.
엄청 간단해 보이는데 이거 하는데 3시간 걸렸다...
예약 메일 기능도 구현하고 싶었는데 안된다. 네이버의 예약 메일 기능은 smtp의 기능이 아니라. 네이버, 구글등의 포탈에서 제공해주는 기능이다. 즉 위의 smtp소스에서 인자 몇개 추가해서 예약 메일을 보낼수 있으리라고 생각했는데 아니었다.
'Python > 2.7 information' 카테고리의 다른 글
유닛테스트. (0) | 2017.03.26 |
---|---|
unittest. 테스트 (0) | 2017.02.25 |
python 딕셔너리에 관하여, 파이써닉하게 코드 짜기 (0) | 2016.11.24 |
다차원 리스트를 만들고 복사하는 것에 대해서. (0) | 2016.11.08 |
next_permutations, prev_permutation, k permutations (0) | 2016.10.03 |