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

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 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管理爬虫

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
安全 测试技术 数据库
Python编程--sys模块及OS模块简单用例
Python编程--sys模块及OS模块简单用例
180 1
|
JSON 数据格式 Python
Python编程:利用JSON模块编程验证用户
Python编程:利用JSON模块编程验证用户
113 1
|
数据处理 Python
Python编程-利用datetime模块生成当前年份之前指定的间隔所有年份的日期列表和csv文件
Python编程-利用datetime模块生成当前年份之前指定的间隔所有年份的日期列表和csv文件
206 1
|
人工智能 安全 Java
Python 多线程编程实战:threading 模块的最佳实践
Python 多线程编程实战:threading 模块的最佳实践
449 5
|
安全 调度 Python
什么是Python中的事件驱动编程?如何使用`asyncio`模块实现异步事件处理?
【2月更文挑战第4天】【2月更文挑战第9篇】什么是Python中的事件驱动编程?如何使用`asyncio`模块实现异步事件处理?
361 0
|
缓存 分布式计算 自然语言处理
Python语言的函数编程模块
Python语言的函数编程模块
|
并行计算 程序员 API
Python多进程编程:利用multiprocessing模块实现并行计算
Python多进程编程:利用multiprocessing模块实现并行计算
1212 0
|
前端开发 安全 Unix
Python编程手册系列 - 日历、日期、时间相关内建模块详解
Python编程手册系列 - 日历、日期、时间相关内建模块详解
215 0
|
开发者 Python
< Python全景系列-7 > 提升Python编程效率:模块与包全面解读
< Python全景系列-7 > 提升Python编程效率:模块与包全面解读
193 0
|
SQL 关系型数据库 MySQL
Python编程:MySQLdb模块对数据库的基本增删改查操作
Python编程:MySQLdb模块对数据库的基本增删改查操作
190 1