pythonmail添加附件_python3 发送邮件添加附件

from email.header import Header

from email.mime.application import MIMEApplication

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from smtplib import SMTP_SSL

import time

email_sender=''#这里是qq邮箱

email_pwd=''#这里是授权码,不知道qq邮箱怎么获取授权码的同事可以百度一下

email_receiver='3270740288@qq.com'

email_sever=SMTP_SSL('smtp.qq.com')#连接qq邮箱服务器

email_sever.login(email_sender,email_pwd)#登录邮箱

email_text=MIMEText('来自小陆的问候','plain','utf-8')#邮件的内容,和内容的格式。这里是txt/plain,纯文本类型。

email_liction=MIMEMultipart()#创建一个带附件的事例

email_liction['Subject']=Header('漫漫长路','utf-8')#标题的内容和编码格式

email_liction['From']=email_sender

email_liction['To']=email_receiver

email_liction['Date']=time.ctime()

email_file=MIMEApplication(open('F:\\temp.html', 'rb').read())#第一个参数打开文件read()方法读出所有内容,刚好是字符串格式,第二个参数是希望的编码,这种方法比较简单

email_file.add_header('Content-Disposition', 'attachment', filename='temp.html')#这里添加一个标题,Content-Disposition,attachment说明是一个附件,filename说明文件名.mail里有一个get_filename()的方法可以得到附件里的文件名。

#filename不能随便命名,因为后缀名会影响到文本的格式。例如把"html"换成"txt",最后加载到QQ邮件的附件就是‘temp.txt’。

email_liction.attach(email_text)#把我们刚才写的邮件内容加进去

email_liction.attach(email_file)#现在我们把编码好的附件也加进去

email_sever.sendmail(email_sender,email_receiver,email_liction.as_string())#由于senemail要传String类型,所以要用.as_string()把内容组合成字符串

email_sever.quit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值