Python smtplib使用实例:网易邮箱向QQ邮箱发送邮件
0.说明
通过一个实例来了解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.邮件发送实例代码与测试
参考了刘天斯老师书本上的代码,自己也做了一些修改,方便自己理解和记忆,如下:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import smtplib
Server = "smtp.163.com" # 163邮箱的SMTP服务器地址
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() # 实例化一个SMTP类
s.connect(Server, ‘25‘) # 连接SMTP服务器
s.starttls() # 开启TLS(安全传输)模式
s.login(‘xpleaf@163.com‘, ‘********‘) # 登陆到163邮件服务器
s.sendmail(From, [To], Body) # 发送邮件
s.quit() # 退出 执行上面的脚本,在QQ邮箱中会收到下面这样一封邮件:
2.下一步要做什么
从上面收到的邮件可以看到,邮件的内容比较简陋,都是纯文本的,可以考虑定制邮件的格式从而使邮件的内容更加多样化。
3.参考资料
《Python自动化运维:技术与最佳实践》
smtplib源代码
本文出自 “香飘叶子” 博客,请务必保留此出处http://xpleaf.blog.51cto.com/9315560/1903279
文章来自:http://xpleaf.blog.51cto.com/9315560/1903279
