标签:connect base64 文件路径 程序 related 一个 导数据 isp tls
起始于对现有工作的内容进行部分重复工作的释放,花费了两周的时间调试了完全可能自己吼得住看得懂能实现目标的代码,如标题所说,本代码主要用户带附件的电子邮件的发送;
对于代码大家只需要修改下文件路径,邮箱地址即可运行,我这边主要是结合navicat数据导出之后+此发送邮件的代码,做成定时任务,让程序每天按时执行,大家就不需要再每天去导数据了,让程序来完成即可,不是有句话怎么说来着:懒人自动化 人越懒才会去想着怎么去做成自动化 安于现状的往往不会有很多的想法
说了这么多废话,直接给大家看下面的代码:
# encoding: utf-8
import smtplib
from datetime import datetime
import os
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
HOST = ‘smtp.163.com‘
SUBJECT = u‘标题内容‘
To = ‘996551709@qq.com,102309888@qq.com‘ #收件人邮箱
From = ‘11111132@163.com‘ #发件人邮箱
msg = MIMEMultipart(‘related‘)
msgtext= MIMEText("<font>你好,<br> 数据详见附件,请查收!</font>","html","utf-8")
msg.attach(msgtext)
# 创建一个MIMEText对象,附加,xlsx文档
#file_name = os.path.join(‘xxxx‘, ‘mail.txt‘)
time = datetime.today().strftime(‘%Y-%m-%d‘)
# file_name = ‘/home/test/db_%s.sql‘ % datetime.today().strftime(‘%Y-%m-%d‘)
attach = MIMEText(open(‘/home/test/db_%s.sql‘ % time, ‘rb‘).read(), ‘base64‘, ‘utf-8‘)
attach[‘Content-Type‘] = ‘application/octet-stream‘
attach[‘Content-Disposition‘] = (u‘attachment; filename="db_%s.sql"‘ % time).encode(‘utf-8‘)
msg.attach(attach)
msg[‘Subject‘] = SUBJECT
msg[‘From‘] = From
msg[‘To‘] = To
try:
server = smtplib.SMTP()
server.connect(HOST, ‘25‘)
# server.starttls()
server.login(‘登录邮箱地址‘, ‘授权码‘)
server.sendmail(From, To.split(‘,‘), msg.as_string())
server.quit()
print(u‘邮件发送成功!‘)
except Exception, e:
print ‘失败‘ + str(e)
写成这样一个完整的可用代码,中间过程不易,也希望能给需要的人提供帮助
版权声明:本文由作者原创,未经允许不得转载 如有问题可联系本人进行咨询,qq:996551709 备注:博客园
标签:connect base64 文件路径 程序 related 一个 导数据 isp tls
原文地址:http://www.cnblogs.com/wppbk/p/7799598.html