python使用logging模块发送邮件代码示例

yipeiwu_com6年前Python基础

logging模块不只是能记录log,还能发送邮件,使用起来非常简单方便

#coding=utf-8 
''''' 
Created on 2016-3-21 
 
@author: Administrator 
''' 
import logging, logging.handlers 
class EncodingFormatter(logging.Formatter): 
 def __init__(self, fmt, datefmt=None, encoding=None): 
  logging.Formatter.__init__(self, fmt, datefmt) 
  self.encoding = encoding 
 def format(self, record): 
  result = logging.Formatter.format(self, record) 
  if isinstance(result, unicode): 
   result = result.encode(self.encoding or 'utf-8') 
    
  return result 
 
#zhangdongsheng@itouzi.com 
errlog = logging.getLogger() 
sh = logging.handlers.SMTPHandler("smtp.163.com", 'xigongda200608@163.com', '381084992@qq.com', 
    "logging from my app", 
    credentials=('xigongda200608', 'password'), 
    secure=()) 
errlog.addHandler(sh) 
sh.setFormatter(EncodingFormatter('%(message)s', encoding='utf-8')) 
errlog.error(u'追加文件时出错') 

总结

以上就是本文关于python使用logging模块发送邮件代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python获取引用对象的个数方式

可以使用python中的sys模块的getrefcount()方法来获取对象引用的个数。 具体可以看以下的实例: import sys # 首先导入sys模块 class Dog...

python dict remove数组删除(del,pop)

比如代码 binfo = {'name':'jay','age':20,'python':'haha'} print binfo.pop('name')#pop方法删除键,并且返回键对应...

python 读文件,然后转化为矩阵的实例

代码流程: 1. 从文件中读入数据。 2. 将数据转化成矩阵的形式。 3. 对于矩阵进行处理。 具体的python代码如下: - 文件路径需要设置正确。 - 字符串处理。 - 字符串数...

python导出hive数据表的schema实例代码

本文研究的主要问题是python语言导出hive数据表的schema,分享了实现代码,具体如下。 为了避免运营提出无穷无尽的查询需求,我们决定将有查询价值的数据从mysql导入hive中...

巧用python和libnmapd,提取Nmap扫描结果

每当我进行内网渗透面对大量主机和服务时,我总是习惯使用自动化的方式从 nmap 扫描结果中提取信息。这样有利于自动化检测不同类型的服务,例如对 web 服务进行路径爆破,测试 SSL/T...