问题
同时使用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
参考