python发送邮件实例分享
发布时间:2020-12-17 08:13:30 所属栏目:Python 来源:网络整理
导读:为了更好的理解邮件发送功能的实现,要先了解邮件发送系统的大致流程。首先 电子邮件之间的相互发送接受就像 邮局邮件发送一样,从一个站点(邮件发送服务器)到目的地站点(邮件接收服务器),然后目的地站点处理收到的邮件,并发送给接受人。每个邮件服务
为了更好的理解邮件发送功能的实现,要先了解邮件发送系统的大致流程。首先 电子邮件之间的相互发送接受就像 邮局邮件发送一样,从一个站点(邮件发送服务器)到目的地站点(邮件接收服务器),然后目的地站点处理收到的邮件,并发送给接受人。每个邮件服务器即担任发送也担任接受邮件,并且每个服务器地址,端口号,配置等也不同。 其实发送邮件的流程就 两部: 第一:写邮件 写好发送方,接受方 第二:发送邮件 连接发送邮件服务器 代码部分: # -*- coding:utf-8 -*- import smtplib from email.header import Header from email.mime.image import MIMEImage from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText #创建邮件对象,相当于信纸 msg = MIMEMultipart() #邮件发送方 msg['From'] = 'XXXXXXXX.qq.com' #邮件接收方 msg['To'] = '1212112@qq.com' #邮件主题 msg['Subject'] = Header('这是邮箱主题部分',charset='UTF-8')#中文主题 #文本内容 txt = '亲爱的用户' part1 = MIMEText(txt,'plain','utf-8') #添加到邮件中 msg.attach(part1) #超文本内容,放有图片,注意src路径,此为放在同一目录中 html = '<div><img src="cid:image1">亲爱的</div>' #一定要设置邮件格式,否则可能会乱码,当时接手别人手中没加邮件格式的项目,坑了我半天 part2 = MIMEText(html,'html','utf-8') #添加到邮件中 msg.attach(part2) #图片放到邮件中 # 指定图片为当前目录 fp = open('test.png','rb') msgImage = MIMEImage(fp.read()) fp.close() # 定义图片 ID,在 HTML 文本中引用 msgImage.add_header('Content-ID','<image1>') msg.attach(msgImage) #加入附件 att2 = MIMEText('这是附件里的文字','base64','utf-8') att2["Content-Type"] = 'application/octet-stream' #设置附件名为runoob.txt att2["Content-Disposition"] = 'attachment; filename="runoob.txt"' #附件放在邮件中 msg.attach(att2) #非ssl方式的smtp(简单邮件发送协议),下面注释为ssl方式的smtp smtp = smtplib.SMTP() # smtp = smtplib.SMTP_SSL() try: #连接主机地址 smtp.connect('mail.yto.net.cn:25') #登录邮箱,需要邮箱账号,密码 smtp.login('XXXXXXXX.qq.com','234123') #发送邮件,需要登录的邮箱号,发送方的邮箱号,发送内容 smtp.sendmail('XXXXXXXX.qq.com','1212112@qq.com',msg.as_string()) #退出邮箱 smtp.quit() print 'The mail is sended successly.' except smtplib.SMTPException,e: print "Error: 无法发送邮件",e 发送结果: 注意点:当自己邮箱作为邮件发送方时,注意邮件服务器的设置里把smtp服务打开 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Python中常见的数据类型小结
- 为什么hash()在python3.4和python2.7下比较慢
- day31:socketserver&hashlib&hmac&TCP登
- python – 大门户网站上的web2py或grok(zope),
- python – 在sublime 3 api中将文本插入视图
- python-3.x – 如何抓取分页页面?点击下一页时没有网址更改
- Python操作Execl 实现自动化填表
- 在Python程序中进行文件读取和写入操作的教程
- lxml python加载没有标题和正文的html字符串,并在目标元素周
- python – 如何工作git ls-files脚本