python发送邮件

来源:互联网 发布:消防安全知识网络大赛 编辑:程序博客网 时间:2024/06/15 01:24
#-*-coding:utf-8 -*-from email.mime.text import MIMEText from email.mime.image import MIMEImagefrom email.mime.multipart import MIMEMultipartimport smtplibimport osclass sendMail():    def sendFile(self,filePath):        #msg = MIMEText(content,_subtype='plain',_charset='gb2312')        #非纯文本          msg = MIMEMultipart()        if not os.path.isfile(filePath):            print("%s is not isfile" % filePath)            return;        fileName=os.path.basename(filePath)        #构建附件        mailFile = MIMEText(open(filePath, 'rb').read(), 'base64', 'gb2312')        mailFile["Content-Type"] = 'application/octet-stream'        mailFile["Content-Disposition"] = 'attachment; filename='+fileName        msg.attach(mailFile)        #构建图片        file1 = "D:\\test.jpg"        image = MIMEImage(open(file1,'rb').read())        #image1为图片标识,在html正文中可用<img src="cid:image1">进行引用        image.add_header('Content-ID','<image1>')        msg.attach(image)        #构建html文本        html="""\            <html>            <head>测试一下</head>            <body>            <br><img src="cid:image1"></br>            </p>            </body>            </html>             """        mailContent = MIMEText(html,_subtype='html',_charset='gb2312')        msg.attach(mailContent)        #加邮件头        msg['to'] = '3102039997@qq.com'        msg['from'] = 'seth@9ishell.com'        msg['subject'] = 'test'        #发送邮件        try:            server = smtplib.SMTP()            server.connect('smtp.mxhichina.com')            server.login('seth@9ishell.com','password')            server.sendmail(msg['from'], msg['to'],msg.as_string())            server.quit()            print("发送成功")        except Exception as e:              print(str(e))if __name__=='__main__':    sendMail().sendFile("D:\test.log");
1 0