search

Home  >  Q&A  >  body text

python 发邮件

用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)

找了好多方法,都是这个结果,请教各位是哪里出了问题,邮件附件显示如下:

伊谢尔伦伊谢尔伦2782 days ago742

reply all(1)I'll reply

  • 怪我咯

    怪我咯2017-04-18 10:26:29

    You can try this one I wrote, which is sent via Sina email. From here, you can send it in any attachment format

    reply
    0
  • Cancelreply