用python 发送带zip格式的邮件,邮件发送成功了,但是附件打不开是,代码如下
import smtplib
from email import encoders
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
def send_file_zipped(the_file):
themsg = MIMEMultipart()
themsg['Subject'] = the_file
themsg['to'] = 'xxx'
themsg['from'] = 'xxx'
themsg.preamble = the_file
msg = MIMEBase('application', 'zip')
zf = open(the_file + '.zip', 'rb')
msg.set_payload(zf.read())
encoders.encode_base64(msg)
msg.add_header('Content-Disposition', 'attachment',
filename=the_file + '.zip')
themsg.attach(msg)
themsg = themsg.as_string()
try:
server = smtplib.SMTP()
server.timeout = 30
server.connect('smtp.exmail.qq.com')
server.login('xxx', 'xxx')
server.sendmail('xxx', 'xxx', themsg)
server.quit()
print '发送成功'
except Exception, e:
print str(e)
if name == "__main__":
file = '20170305'
send_file_zipped(file)
找了好多方法,都是这个结果,请教各位是哪里出了问题,邮件附件显示如下:
You can try this one I wrote, which is sent via Sina email. From here, you can send it in any attachment format