ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
我们可以调用 logging 模块来设置我们想要的log格式和输出地址。 (1)如果想把logging保存到本地文件中,请在`settings.py`中添加如下配置: ```python LOG_FILE = "books.log" # 日志将保存到本地的books.log文件中 ``` (2)如果想自己定义logging的输出格式,可以调用`logging.basicConfig`函数来完成。 ```python logging.basicConfig( filename: 指定日志文件名,如果指定了filename,则settings.py中的LOG_FILE可以不指定 filemode: 和file函数意义相同,指定日志文件的打开模式,'w'或'a' format: 指定输出的格式和内容,format可以输出很多有用信息,如上例所示: %(levelno)s: 打印日志级别的数值 %(levelname)s: 打印日志级别名称 %(pathname)s: 打印当前执行程序的路径,其实就是sys.argv[0] %(filename)s: 打印当前执行程序名 %(funcName)s: 打印日志的当前函数 %(lineno)d: 打印日志的当前行号 %(asctime)s: 打印日志的时间 %(thread)d: 打印线程ID %(threadName)s: 打印线程名称 %(process)d: 打印进程ID %(message)s: 打印日志信息 datefmt: 指定时间格式,同time.strftime() level: 设置日志级别,默认为logging.WARNING stream: 指定日志的输出流,可以指定输出到sys.stderr,sys.stdout或者文件, 默认输出到sys.stderr,当stream和filename同时指定时,stream被忽略 ) logging打印信息函数: logging.debug('This is debug message') logging.info('This is info message') logging.warning('This is warning message') ``` ```python """ 例:books.py @Date 2021/4/7 """ import scrapy import logging from mySpider.items import MyspiderItem logging.basicConfig(level=logging.WARNING, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt='%a, %d %b %Y %H:%M:%S', filename='zhipin.log', filemode='w') my_logging = logging.getLogger(__name__) class BooksSpider(scrapy.Spider): name = 'books' # 爬虫名称 allowed_domains = ['book.jd.com'] # 爬虫范围 start_urls = ['http://book.jd.com/'] # 爬取的网站 def parse(self, response): my_logging.warning("-------开始爬虫!--------") pass ```