python发送带附件邮件详解

本文详细介绍了如何使用Python的smtplib和email模块发送带有附件的电子邮件。首先展示了一个发送邮件的基本示例,然后逐步解释了如何添加附件,包括读取文件内容、设置附件头和构建MIMEBase对象。此外,还提到了邮件格式相关的SMTP、POP3、IMAP协议,以及MIME扩展邮件格式的相关知识。
摘要由CSDN通过智能技术生成


python发送邮件

#!/usr/bin/env python
#coding=utf-8
import time
import smtplib
from email.MIMEText import MIMEText
#from email.Header import Header
#正文
mail_body='hello, this is the mail content'
#发信邮箱
mail_from='88fly@163.com'
#收信邮箱
mail_to=['mysqld@163.com','15158800000@139.com']
#定义正文
msg=MIMEText(mail_body)
#定义标题
msg['Subject']='this is the title'
#定义发信人
msg['From']=mail_from
msg['To']=';'.join(mail_to)
#定义发送时间(不定义的可能有的邮件客户端会不显示发送时间)
msg['date']=time.strftime('%a, %d %b %Y %H:%M:%S %z')  
smtp=smtplib.SMTP()
#连接SMTP服务器,此处用的163的SMTP服务器
smtp.connect('smtp.163.com')
#用户名密码
smtp.login('88fly','password')
smtp.sendmail(mail_from,mail_to,msg.as_string())
smtp.quit()
print 'ok'

发送带附件邮件

采用email模块发送电子邮件附件。发送一个未知MIME类型的文件附件其基本思路如下:
1. 构造MIMEMultipart对象做为根容器
2. 构造MIMEText对象做为邮件显示内容并附加到根容器
3. 构造MIMEBase对象做为文件附件内容并附加到根容器
  a. 读入文件内容并格式化
  b. 设置附件头
4. 设置根容器属性
5. 得到格式化后的完整文本
6. 用smtp发送邮件

脚本一

#!/usr/bin/env python
#coding=utf-8
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email import Encoders
import time
mail_body='hello, this is the mail content'
mail_from='88fly@163.com'
mail_to=['mysqld@163.com']
# 构造MIMEMultipart对象做为根容器
msg=MIMEMultipart()
 
# 构造MIMEText对象做为邮件显示内容并附加到根容器
body=MIMEText(m

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值