》详情可参考该文✍:https://www.cnblogs.com/xianyulouie/p/11041777.html
前言
》爬虫中logging模块的使用可谓说是非常方便。当需要爬取多数据,输入多内容时,仅仅依靠 print 函数是看不到是哪个代码的输出,反之会觉得乱;而使用logging可以清晰看出是哪个爬虫文件的输出、行数、时间、什么提示等(这些都可以自定义样式)
讲解
1、在scrapy爬虫框架中
- 编写以下代码,会在终端中输出日志内容:
import logging # 导入logging模块
logger = logging.getLogger(__name__) # 实例化logger
logger.warning(...) # 输出日志内容
# 还可以调用其他方法,如:logger.info()、logger.debug()等
- 如下图所示:
- 还可以在scrapy框架的setting.py中进行log日志的配置,如下图:(设置日志的提醒等级、日志存放路径等)
2、在普通爬虫项目中
- 编写以下代码,会在终端中输出日志内容:(日志样式:baseConfig(),可以在百度搜,找到合适的样式输出内容)
import logging
logging.basicConfig(level=logging.INFO,
format='%(levelname)s [%(filename)s:%(lineno)d]'
': %(message)s'
' - %(asctime)s', datefmt='[%d/%b/%Y %H:%M:%S]',
)
logger = logging.getLogger(__name__)
if __name__ == "__main__":
logger.info("this is a info log")
logger.info("this is a info log1")
- 如下图所示:(同样的,只需要在一个py文件中定义好log日志内容,其他py文件就可以导入文件,直接调用)