在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Python/ Logging
Benchmarking
命令行工具(Command line tools)
下載器中間件(Downloader Middleware)
信號(hào)(Signals)
Telnet 終端(Telnet Console)
初窺 Scrapy
數(shù)據(jù)收集(Stats Collection)
Scrapyd
通用爬蟲(Broad Crawls)
Item Loaders
試驗(yàn)階段特性
Scrapy 入門教程
自動(dòng)限速(AutoThrottle)擴(kuò)展
Settings
Scrapy 終端(Scrapy shell)
下載項(xiàng)目圖片
DjangoItem
調(diào)試(Debugging)Spiders
選擇器(Selectors)
Feed exports
Spiders Contracts
借助 Firefox 來(lái)爬取
Logging
Spiders
Ubuntu 軟件包
實(shí)踐經(jīng)驗(yàn)(Common Practices)
安裝指南
Item Exporters
擴(kuò)展(Extensions)
Items
Spider 中間件(Middleware)
異常(Exceptions)
例子
發(fā)送 email
架構(gòu)概覽
常見問題(FAQ)
Jobs:暫停,恢復(fù)爬蟲
核心 API
使用 Firebug 進(jìn)行爬取
Item Pipeline
Link Extractors
Web Service
調(diào)試內(nèi)存溢出

Logging

crapy 提供了 log 功能。您可以通過 scrapy.log 模塊使用。當(dāng)前底層實(shí)現(xiàn)使用了 Twisted logging,不過可能在之后會(huì)有所變化。

log 服務(wù)必須通過顯示調(diào)用 scrapy.log.start()來(lái)開啟,以捕捉頂層的 Scrapy 日志消息。 在此之上,每個(gè) crawler 都擁有獨(dú)立的 log 觀察者(observer)(創(chuàng)建時(shí)自動(dòng)連接(attach)),接收其 spider 的日志消息。

Log levels

Scrapy 提供 5 層 logging 級(jí)別:

  • CRITICAL - 嚴(yán)重錯(cuò)誤(critical)
  • ERROR - 一般錯(cuò)誤(regular errors)
  • WARNING - 警告信息(warning messages)
  • INFO - 一般信息(informational messages)
  • DEBUG - 調(diào)試信息(debugging messages)

如何設(shè)置 log 級(jí)別

您可以通過終端選項(xiàng)(command line option) –loglevel/-L 或 LOG_LEVEL 來(lái)設(shè)置 log 級(jí)別。

如何記錄信息(log messages)

下面給出如何使用 WARNING 級(jí)別來(lái)記錄信息的例子:

from scrapy import log
log.msg("This is a warning", level=log.WARNING)

在 Spider 中添加 log(Logging from Spiders)

在 spider 中添加 log 的推薦方式是使用 Spider 的 log()方法。該方法會(huì)自動(dòng)在調(diào)用 scrapy.log.msg()時(shí)賦值 spider 參數(shù)。其他的參數(shù)則直接傳遞給 msg()方法。

scrapy.log 模塊

scrapy.log.start(logfile=None, loglevel=None, logstdout=None)

啟動(dòng) Scrapy 頂層 logger。該方法必須在記錄任何頂層消息前被調(diào)用 (使用模塊的 msg() 而不是 Spider.log 的消息)。否則,之前的消息將會(huì)丟失。

參數(shù):

  • logfile (str) – 用于保存 log 輸出的文件路徑。如果被忽略,LOG_FILE 設(shè)置會(huì)被使用。如果兩個(gè)參數(shù)都是 None,log 將會(huì)被輸出到標(biāo)準(zhǔn)錯(cuò)誤流(standard error)。
  • loglevel – 記錄的最低的 log 級(jí)別??捎玫闹涤? CRITICAL,ERROR,WARNING,INFO and DEBUG。
  • logstdout (boolean) – 如果為 True,所有您的應(yīng)用的標(biāo)準(zhǔn)輸出(包括錯(cuò)誤)將會(huì)被記錄(logged instead)。 例如,如果您調(diào)用 “print ‘hello’”,則’hello’會(huì)在 Scrapy 的 log 中被顯示。 如果被忽略,則 LOG_STDOUT 設(shè)置會(huì)被使用。

scrapy.log.msg(message, level=INFO, spider=None)

記錄信息(Log a message)

參數(shù):

  • message (str) – log 的信息
  • level – 該信息的 log 級(jí)別. 參考 Log levels.
  • spider (Spider 對(duì)象) – 記錄該信息的 spider. 當(dāng)記錄的信息和特定的 spider 有關(guān)聯(lián)時(shí),該參數(shù)必須被使用。

scrapy.log.CRITICAL

嚴(yán)重錯(cuò)誤的 Log 級(jí)別

scrapy.log.ERROR

錯(cuò)誤的 Log 級(jí)別 Log level for errors

scrapy.log.WARNING

警告的 Log 級(jí)別 Log level for warnings

scrapy.log.INFO

記錄信息的 Log 級(jí)別(生產(chǎn)部署時(shí)推薦的 Log 級(jí)別)

scrapy.log.DEBUG

調(diào)試信息的 Log 級(jí)別(開發(fā)時(shí)推薦的 Log 級(jí)別)

Logging 設(shè)置

以下設(shè)置可以被用來(lái)配置 logging:

  • LOG_ENABLED
  • LOG_ENCODING
  • LOG_FILE
  • LOG_LEVEL
  • LOG_STDOUT