博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Scrapy 如何设置日志
阅读量:7208 次
发布时间:2019-06-29

本文共 1136 字,大约阅读时间需要 3 分钟。

Logging 模块

刚开始接触的时候,我看官方文档只说了怎么设置日志,没有将去哪里看日志。然后参考了 python 关于 logging 的文档,我发现可以自定义一个输出的文件。

# 在你需要输出日志的地方设置,比如 your_spider.pyimport logging# level 表示级别logging.basicConfig(filename='example.log',level=logging.DEBUG)复制代码

级别的作用

首先,根据严重程度排序:DEBUG < INFO < WARNING < ERROR < CRITICAL

具体每个级别表示什么含义可以按照自己的习惯来处理。如果设置 level=logging.DEBUG,那么以上所有的信息都会被输出到日志。如果设置级别为WARNING,那么只有WARNING及以上会输出到日志。

logging.basicConfig(filename='example.log',level=logging.INFO)logging.debug('This message won\'t go to the log file')logging.info('This should')logging.warning('And this, too')复制代码

运行结果:

INFO:root:This shouldWARNING:root:And this, too复制代码

相关配置

日志来源

INFO:scrapy.core.engine:Spider opened...DEBUG:scrapy.extensions.telnet:Telnet console listening on 127.0.0.1:6026WARNING:root:The failed "info".复制代码

Scrapy 的日志中会显示日志的来源,即来自 scrapy 还是来自 root。

写入模式

默认情况下是 a 模式,也就是新日志会直接添加到旧日志后面。有时候调试的时候希望日志文件干净一点,可以用新日志覆盖旧日志,修改成 w 模式:

logging.basicConfig(filename='example.log', filemode='w', level=logging.DEBUG)复制代码

日期与时间

如果希望在每条日志前面加具体的时间,可以加入一个参数:

logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p')复制代码

可以任意自定义,和 time 模块的写法相同。

更多请参考:

转载地址:http://culum.baihongyu.com/

你可能感兴趣的文章
SUSE LINUX系统文件句柄限制的修改
查看>>
贺双节,签名版限量特惠
查看>>
警惕“***性社工”现象
查看>>
Exchange 2013与OWA13集成
查看>>
有话请直说
查看>>
虚机不能启动的特例思考
查看>>
OSPF概述
查看>>
自动化部署操作系统-Kickstart+PXE自动部署
查看>>
Eclipse europa 更新时 Error retrieving "feature.xml". [error in opening zip file]的解决
查看>>
Hyper-V损坏数据恢复报告
查看>>
《从零开始学Swift》学习笔记(Day 16)——字典集合
查看>>
[转]配置nginx+apache 其中动态由apache处理,静态由nginx处理
查看>>
在Word中如何实现"后退"?
查看>>
简明 Vim 练级攻略 | 酷壳 - CoolShell.cn
查看>>
养成逻辑的习惯
查看>>
jQuery attributes(上)
查看>>
ISO8583报文协议(转)
查看>>
Android文本框实现搜索和清空效果
查看>>
Logic-算法-XX部队XX侦察队员
查看>>
海量数据(数据量比较大时)的处理分析
查看>>