通过一个实例来了解smtplib的使用,这里使用网易邮箱来向QQ邮箱发送邮件。
由于发件人需要连接邮件服务器才能发送邮件,下面提供163邮箱常用的收件、发件服务器的地址和端口:
类型 |
服务器名称 |
服务器地址
|
SSL协议端口号 |
非SSL协议端口号 |
收件服务器
|
POP |
pop.163.com |
995 |
110
|
收件服务器 |
IMAP |
imap.163.com |
993 |
143 |
发件服务器 |
SMTP |
smtp.163.com |
465/994 |
25 |
Ok,SMTP的经测试可以使用,其它的有需要的也可以试试。
1.邮件发送实例代码与测试
参考了刘天斯老师书本上的代码,自己也做了一些修改,方便自己理解和记忆,如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import smtplib
Server = "smtp.163.com"
Subject = "Test email from Python"
To = "429191942@qq.com"
From = "xpleaf@163.com"
Text = "This is the email send by xpleaf, from xpleaf@163.com!"
Body = '\r\n' .join(( "From: %s" % From,
"To: %s" % To,
"Subject: %s" % Subject,
"",
Text))
s = smtplib.SMTP()
s.connect(Server, '25' )
s.starttls()
s.login( 'xpleaf@163.com' , '********' )
s.sendmail(From, [To], Body)
s.quit()
|
执行上面的脚本,在QQ邮箱中会收到下面这样一封邮件:

2.下一步要做什么
从上面收到的邮件可以看到,邮件的内容比较简陋,都是纯文本的,可以考虑定制邮件的格式从而使邮件的内容更加多样化。
本文转自 xpleaf 51CTO博客,原文链接:http://blog.51cto.com/xpleaf/1903279,如需转载请自行联系原作者