借用:https://blog.csdn.net/u011541946/article/details/70198676 博客
# !/usr/bin/python
# -*- coding:utf-8 -*-
import logging
import os.path
import time
# 自定义日志类
class Logger(object):
def __init__(self,logger):
"""
指定保存日志的文件路径,日志级别,以及调用文件
将日志存入到指定的文件中
:param logger:
"""
# 创建一个 logger
self.logger = logging.getLogger(logger)
self.logger.setLevel(logging.DEBUG)
# 创建一个 handler,用于写入日志文件
rq = time.strftime('%Y%m%d%H%M',time.localtime(time.time()))
log_path = os.path.dirname(os.getcwd()) + '\\Logs\\'
isExists = os.path.exists(log_path) # 判断文件夹是否存在,不存在则创建
if not isExists:
try:
os.makedirs(log_path)
except Exception as e:
print("创建Screenshots文件夹失败", e)
log_name = log_path + rq + '.log'
fh = logging.FileHandler(log_name)
fh.setLevel(logging.INFO)
# 在创建一个 handler,用于输出到控制台
ch = logging.StreamHandler()
ch.setLevel(logging.INFO)
# 定义 handler 的输出格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
ch.setFormatter(formatter)
# 给 logger 添加 handler
self.logger.addHandler(fh)
self.logger.addHandler(ch)
def getlog(self):
return self.logger
修改了引用博主的一部分代码,加入了自己的一些意见。主要修改地方为
1)当文件不存在时,自动进行创建。