Python编程:scrapy中使用logging,日志出现多次

问题

同时使用scrapy.log和logging,日志会多次出现在控制台

import logging

logging.basicConfig(level=logging.DEBUG)

logging.debug("message")

输出的日志

DEBUG:spider:已经处理过了 product_id: 149118
2019-04-09 16:19:19 [spider] DEBUG: 已经处理过了 product_id: 149118

解决

方式一

注释掉日志配置

import logging

# logging.basicConfig(level=logging.DEBUG)

logging.debug("message")

方式二

通过 logger 成功解决

import logging

logger = logging.getLogger(__name__)
logger.setLevel(level=logging.DEBUG)

logger.debug("message")

方式三

比如peewee的日志记录

import logging

logger = logging.getLogger('peewee')
logging.propagate=False # 这是一个布尔标志, 用于指示消息是否传播给父记录器, 默认值为True

参考

Scrapy logging日志重复输出的解决方法

使用logging管理爬虫

上一篇:Powershell管理系列(十二)Exchange新启用的邮箱禁用OWA及Activesync的访问


下一篇:Java:日志输出JDK Logging、commons-logging、log4j、SLF4J、Logback