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