Skip to content

Commit 38988b9

Browse files
committed
add gmail example
1 parent cc264df commit 38988b9

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

email/sendmail_tls.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# -*- coding: utf-8 -*-
2+
3+
from email import encoders
4+
from email.header import Header
5+
from email.mime.text import MIMEText
6+
from email.utils import parseaddr, formataddr
7+
8+
import smtplib
9+
10+
def _format_addr(s):
11+
name, addr = parseaddr(s)
12+
return formataddr(( \
13+
Header(name, 'utf-8').encode(), \
14+
addr.encode('utf-8') if isinstance(addr, unicode) else addr))
15+
16+
from_addr = raw_input('Gmail: ')
17+
password = raw_input('Password: ')
18+
to_addr = raw_input('To: ')
19+
smtp_server = 'smtp.gmail.com'
20+
smtp_port = 587
21+
22+
msg = MIMEText('hello, send by Python...', 'plain', 'utf-8')
23+
msg['From'] = _format_addr(u'Python爱好者 <%s>' % from_addr)
24+
msg['To'] = _format_addr(u'管理员 <%s>' % to_addr)
25+
msg['Subject'] = Header(u'来自SMTP的问候……', 'utf-8').encode()
26+
27+
server = smtplib.SMTP(smtp_server, smtp_port)
28+
server.starttls()
29+
server.set_debuglevel(1)
30+
server.login(from_addr, password)
31+
server.sendmail(from_addr, [to_addr], msg.as_string())
32+
server.quit()

0 commit comments

Comments
 (0)