购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.15 日志记录

网络爬虫的运行过程可能很长,为了监控运行状态,可以用日志记录。

日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET,当然也可以自己定义日志级别。

处理器将日志记录发送到任何输出,这些输出用自己的方式处理日志记录。

例如,FileHandler会获取日志记录并将其附加到文件中。

标准日志记录模块已经配备了多个内置处理器,如:

(1)可以写入文件的多个文件处理器(TimeRotated、SizeRotated、Watched);

(2)StreamHandler可以输出到stdout或stderr等流;

(3)SMTPHandler通过电子邮件发送日志记录;

(4)SocketHandler将日志记录发送到流套接字。

此外,还有SyslogHandler、NTEventHandler、HTTPHandler、MemoryHandler等处理器。

格式器负责将元数据丰富的日志记录序列化为一个字符串。如果没有提供,则有一个默认格式器。记录库提供的通用格式器类将模板和样式作为输入,然后可以为日志记录对象中的所有属性声明占位符。

举个例子,'%(asctime)s %(levelname)s %(name)s: %(message)s'会生成类似这样的日志:

2017-07-19 15:31:13,942 INFO parent.child: Hello EuroPython。

请注意,属性消息是使用提供的参数对日志的原始模板进行插值的结果,例如,对于logger.info("Hello %s", "Laszlo"),消息将是"Hello Laszlo"。

TestStreamHandler.py中的示例代码如下:

输出: 6WkSUEjSoKzrjQX6cdCIivLQCxG7G4vi5pz6SG3MrzyzsRjqZcgzbbnJNxPBrQfG

     2022-06-24 22:01:28,465 [TestStreamHandler.py:12 - <module> - INFO ] trainning...
点击中间区域
呼出菜单
上一章
目录
下一章
×