python 实现发邮件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_20183817/article/details/80931729
 
 
# -*- coding: utf-8 -*-

import smtplib
from email.mime.text import MIMEText
from email.header import Header
import MySQLdb
# 使用cursor()方法获取操作游标
db = MySQLdb.connect("localhost","root","118169","test_demo",charset='utf8' )
cursor = db.cursor()
querysql="""select count(0) from  employee """
aa= cursor.execute(querysql)
querysql1="""show tables; """
cursor.execute(querysql1)
results=cursor.fetchall()
# print results

#打开数据库连接
# 第三方 SMTP 服务
mail_host="smtp.163.com"  #设置服务器
mail_user="[email protected]"   #用户名
mail_pass=""   #口令

sender = '@163.com'
receivers = '@163.com'  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱

message = MIMEText('工程报错请及时处理', 'plain', 'utf-8')
# print type(message)
# print message
message['From'] = Header("oozie",'utf-8')
message['To'] =  Header("负责人", 'utf-8')

subject = '监控mysql数据量邮件'
message['Subject'] = Header(subject, 'utf-8')
print 'aa:'+str(aa)


for i in results:
   querysql = "select count(0) from  %s "%i
   aa=cursor.execute(querysql)
   print 'table'+'%s'%i +' data is:'+'%d'%aa
   if aa == 0:
     try:
       smtpObj = smtplib.SMTP()
       smtpObj.connect(mail_host, 25)  # 25 为 SMTP 端口号
       smtpObj.login(mail_user, mail_pass)
       smtpObj.sendmail(sender, receivers,
                        message.as_string())
       print "邮件发送成功"
     except smtplib.SMTPException:
       print "Error: 无法发送邮件"
   else:
     print '数据正常'




猜你喜欢

转载自blog.csdn.net/baidu_20183817/article/details/80931729
今日推荐