我想修改scrapy日志消息以在其开头包含用户标识。例如,而不是这个
2015-03-03 17:09:34+0530 [scrapy] INFO: Enabled spider middlewares: HttpErrorMiddleware, OffsiteMiddleware, RefererMiddleware, UrlLengthMiddleware, DepthMiddleware
是否可以使其显示为
**user_id**:2015-03-03 17:09:34+0530 [scrapy] INFO: Enabled spider middlewares: HttpErrorMiddleware, OffsiteMiddleware, RefererMiddleware, UrlLengthMiddleware, DepthMiddleware
另外,有没有办法只记录用户消息;即,只记录我要记录的消息,我将从代码中提供这些消息?
非常感谢任何帮助。提前谢谢!
答案 0 :(得分:2)
Scrapy使用Twisted的日志系统,它建立在日志标准库之上。我没有答案,如何更改scrapy本身生成的日志的日期格式。
对于你的第二个问题,我可能会回答。我认为你应该通过设置
完全消除scrapy日志记录LOG_ENABLED = False
你在settings.py中的。然后,为自己配置日志模块(在蜘蛛模块之上)
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(levelname)8s\t%(message)s', )
然后使用logging.log
,logging.info
,logging.debug
等进行记录。
我留给你找出所需的记录格式。
答案 1 :(得分:2)
在settings.py中添加
LOG_FORMAT = user_id +' %(asctime)s %(levelname)8s\t%(message)s'
更多信息https://doc.scrapy.org/en/latest/topics/logging.html#logging-settings