python的smtp邮件发送
来源:互联网 发布:esp8266的单片机教程 编辑:程序博客网 时间:2024/05/16 12:29
python内置了许多库来让我们来实现邮箱的发送:
直接上代码,上了在解释:
from email import encodersfrom email.header import Headerfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.mime.base import MIMEBasefrom email.utils import parseaddr, formataddrimport smtplibdef _format_addr(s): name, addr = parseaddr(s) return formataddr((Header(name, 'utf-8').encode(), addr))msg=MIMEText('hello, send by Python...', 'plain', 'utf-8')from_addr = 'xxxxx'password = 'xxxxx'to_addr = 'xxxxx'smtp_server = 'xxxxx'msg['From'] = _format_addr('Python 爱好者 <%s>' % from_addr)msg['To'] = _format_addr('from <%s>' % to_addr)msg['Subject'] = Header('开心', 'utf-8').encode()server = smtplib.SMTP_SSL(smtp_server, 465)server.set_debuglevel(1)server.login(from_addr, password)server.sendmail(from_addr, [to_addr], msg.as_string())server.quit()
第一次写,有点激动,基于我自己的理解,如有错误,希望你们帮我纠正。python的邮件是基于我们登陆一个目标邮箱后,通过一系列的传递,最后到达目标邮箱。
msg=MIMEText() 传输的内容,plain是文字,还有html等等。。。
然后是我们发送message的主题,来源,等一切header,写好才不会被当做是垃圾邮件。
smtp.SMTP_SSL () #这个是将邮件通过SSL协议加密
server.set_debuglevel(1) #这个是将邮件发送的过程显示到我们的结果当中
然后是将我们写好的密码账号登陆服务器,这些相信大家都懂,最近多出来一个授权码,所以写登陆密码的时候,需要注意一下这个授权码不是邮箱密码。
提供一下网易和qq的smtp服务器地址和端口:
网易: smtp.163.com 端口:465
q q: smtp.qq.com 端口:465
这里有个问题需要注意,网易的邮箱不支持附件传输,所以实验的话用qq的邮箱就好了
0 0
- python的smtp邮件发送
- python smtp发送邮件
- python smtp发送邮件
- Python SMTP发送邮件
- Python SMTP发送邮件
- python smtp 发送邮件
- Python SMTP发送邮件
- Python SMTP发送邮件
- python SMTP发送邮件
- Python SMTP发送邮件
- Python SMTP发送邮件
- Python SMTP发送邮件
- Python SMTP发送邮件
- Python发送带附件的SMTP邮件
- 使用python的smtp模块发送邮件
- Python的SMTP发送邮件学习记录
- Python的SMTP邮件发送代码
- SMTP邮件的发送
- mini2440通过nfs挂载linux文件夹
- Android Context 上下文 你必须知道的一切
- STL简介
- SAP中的ALE, IDOC
- 安装Ubuntu16.04小结
- python的smtp邮件发送
- 二叉树的递归与非递归
- Git常用指令笔记
- ABAP 中JSON格式的转换与解析
- 类型转换构造函数隐式调用与运算符重载参数类型的不对应
- 漫谈程序员系列:程序员该不该考虑初创公司
- springMVC web工程之 HelloWorld
- [知识点滴]HTML5元素垂直居中那些事?
- java多线程(二)