1,不用第三方库

# coding: utf-8

import logging

BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE = range(8)

RESET_SEQ = "\033[0m"

COLOR_SEQ = "\033[1;%dm"

COLORS = {

'WARNING': GREEN,

'INFO': WHITE,

'DEBUG': BLUE,

'CRITICAL': YELLOW,

'ERROR': RED

}

class ColoredFormatter(logging.Formatter):

def __init__(self, msg, use_color=True):

logging.Formatter.__init__(self, msg)

self.use_color = use_color

def format(self, record):

levelname = record.levelname

message = str(record.msg)

funcName = record.funcName

if self.use_color and levelname in COLORS:

levelname_color = COLOR_SEQ % (30 + COLORS[levelname]) + levelname + RESET_SEQ

message_color = COLOR_SEQ % (30 + COLORS[levelname]) + message + RESET_SEQ

funcName_color = COLOR_SEQ % (30 + COLORS[levelname]) + funcName + RESET_SEQ

record.levelname = levelname_color

record.msg = message_color

record.funcName = funcName_color

return logging.Formatter.format(self, record)

LOGFORMAT = "[%(asctime)s][%(name)s] [%(levelname)s] (%(filename)s:%(funcName)s:%(lineno)d) %(message)s"

LOG_LEVEL = logging.DEBUG

formatter = ColoredFormatter(LOGFORMAT)

stream = logging.StreamHandler()

stream.setLevel(LOG_LEVEL)

stream.setFormatter(formatter)

logging.root.setLevel(LOG_LEVEL)

log = logging.getLogger('logconfig')

log.setLevel(LOG_LEVEL)

log.addHandler(stream)

def Logging(name):

log = logging.getLogger(name)

log.setLevel(LOG_LEVEL)

log.addHandler(stream)

return log

if __name__ == '__main__':

logger = Logging(__name__)

logger.info(123123)

logger.debug(123123)

logger.error(123123)

logger.warning(123123)

2,使用colorlog pip install colorlog

# coding: utf-8

# coding: utf-8

from colorlog import ColoredFormatter

import logging

LOG_LEVEL = logging.DEBUG

LOGFORMAT = "[%(asctime)s][%(name)s] [%(log_color)s**%(levelname)s**%(reset)s] [%(filename)s:%(funcName)s:%(log_color)s%(lineno)d%(reset)s] %(log_color)s%(message)s%(reset)s"

logging.root.setLevel(LOG_LEVEL)

formatter = ColoredFormatter(LOGFORMAT)

stream = logging.StreamHandler()

stream.setLevel(LOG_LEVEL)

stream.setFormatter(formatter)

log = logging.getLogger('logconfig')

log.setLevel(LOG_LEVEL)

log.addHandler(stream)

def Logging(name):

log = logging.getLogger(name)

log.setLevel(LOG_LEVEL)

log.addHandler(stream)

return log

if __name__ == '__main__':

logging = Logging("test")

logging.info(123123)

logging.warning(123123)

logging.debug(123123)

3,华丽的日志

pip install logbook termcc dataclasses

#coding: utf-8

from logbook import Logger

from termcc.helper.logger import sample_flask as setup_logger

setup_logger()

logging = Logger(__name__)

logging.info("123123")

logging.debug("123123")

logging.warn("123123")

到此这篇关于python日志通过不同的等级打印不同的颜色的文章就介绍到这了,更多相关python根据日志级别打印颜色内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

python不同颜色的代码_python日志通过不同的等级打印不同的颜色(示例代码)相关推荐

  1. python视频行人检测_python+opencv3.4.0 实现HOG+SVM行人检测的示例代码

    参照opencv官网例程写了一个基于python的行人检测程序,实现了和自带检测器基本一致的检测效果. opencv版本:3.4.0 训练集和opencv官方用了同一个,可以从http://pasca ...

  2. python操作数据库教程_Python连接mysql数据库及简单增删改查操作示例代码

    1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...

  3. python 写数值模拟器_python实现模拟器爬取抖音评论数据的示例代码

    目标: 由于之前和朋友聊到抖音评论的爬虫,demo做出来之后一直没整理,最近时间充裕后,在这里做个笔记. 提示:大体思路 通过fiddle + app模拟器进行抖音抓包,使用python进行数据整理 ...

  4. python登录网页账号密码_Python 通过爬虫实现GitHub网页的模拟登录的示例代码

    1. 实例描述 通过爬虫获取网页的信息时,有时需要登录网页后才可以获取网页中的可用数据,例如获取 GitHub 网页中的注册号码时,就需要先登录账号才能在登录后的页面中看到该信息,如下图所示.那么该如 ...

  5. 初学者怎样看懂python代码_Python零基础入门-(如何让人读懂你的代码)文档注释

    目标注释的作用 单行注释(行注释) 多行注释(块注释) 01. 注释的作用使用用自己熟悉的语言,在程序中对某些代码进行标注说明,增强程序的可读性 02. 单行注释(行注释)以 # 开头,# 右边的所有 ...

  6. python数据库教程_Python连接mysql数据库及简单增删改查操作示例代码

    1.安装pymysql 进入cmd,输入 pip install pymysql: 2.数据库建表 在数据库中,建立一个简单的表,如图: 3.简单操作 3.1查询操作 #coding=utf-8 #连 ...

  7. python 定时自动爬取_python实现scrapy爬虫每天定时抓取数据的示例代码

    1. 前言. 1.1. 需求背景. 每天抓取的是同一份商品的数据,用来做趋势分析. 要求每天都需要抓一份,也仅限抓取一份数据. 但是整个爬取数据的过程在时间上并不确定,受本地网络,代理速度,抓取数据量 ...

  8. python实现简易聊天需要登录博客园zip下载_Python基于Socket实现简易多人聊天室的示例代码...

    前言 套接字(Sockets)是双向通信信道的端点. 套接字可以在一个进程内,在同一机器上的进程之间,或者在不同主机的进程之间进行通信,主机可以是任何一台有连接互联网的机器. 套接字可以通过多种不同的 ...

  9. python 去重 字典_python按照list中字典的某key去重的示例代码

    一.需求说明 当我们写爬虫的时候,经常会遇到json格式的数据,它通常是如下结构: data = [{'name':'小K','score':100}, {'name':'小J','score':98 ...

最新文章

  1. 斯坦福连续发了四年的 AI 报告,今年讲了什么?
  2. Istio-0.8.0在Minikube环境中快速启动Bookinfo示例
  3. linux软件包管理之rpm 、yum基本使用
  4. 使用append之后数组维度消失_JAVA魅力之神奇的数组带给你不一样的乐趣
  5. linux下c语言抓包库libpcap
  6. 百度SEO站群织梦dedecms自定义多条件筛选插件源码
  7. 2020 COCO Keypoint Challenge 冠军之路!
  8. C++字符串操作总结
  9. SPS:设置访问群体
  10. JavaScript基础面试题
  11. 1、配置后台登录以及模板引入
  12. python读取同花顺数据_python爬取同花顺数据
  13. 无密码如何破解PDF加密
  14. 用python一条命令解决多个ts转换成MP4(就一条),备用两选一
  15. 网站APP信息以及用户数据泄露排查方案
  16. 软著代办一般需要多少钱?
  17. 010editor pyc template
  18. Control your destiny, or someone else will
  19. 华为路由器显示网络未连接到服务器,华为路由器Q1连接没有网络该怎么办?
  20. 计算机运用基础 南开在线作业,《大学计算机基础》20秋南开在线作业百分

热门文章

  1. charles抓手机app的包的操作步骤
  2. 测试管理工具实践(小组作业)
  3. 《微服务设计》(一)---- 微服务
  4. 课堂练习--最大子数组和
  5. Objective-C 与JAVA的SHA1/HmacSHA1加密算法实现
  6. gvim的常用编辑快捷键
  7. 得先好好研究一数据库
  8. Windows 命令行及Git操作
  9. 【OpenCV新手教程之十三】OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔与图片尺寸缩放...
  10. 1040. Airline Company