scrapy的資料收集功能
定義
scrapy提供了方便的收集資料的機制。資料以key/value方式儲存,值大多是計數值。
該機制叫做資料收集器(stats collector),可以通過 crawler api 的屬性 stats 來使用。
特點
無論資料收集(stats collection)開啟或者關閉,資料收集器永遠都是可用的。
因此您可以import進自己的模組並使用其api(增加值或者設定新的狀態鍵(stat keys))。
該做法是為了簡化資料收集的方法: 您不應該使用超過一行**來收集您的spider,scrpay擴充套件或任何您使用資料收集器**裡頭的狀態。
資料收集器的另乙個特性是(在啟用狀態下)很高效,(在關閉情況下)非常高效(幾乎察覺不到)。
資料收集器對每個spider保持乙個狀態表。當spider啟動時,該錶自動開啟,當spider關閉時,自動關閉
使用
設定資料 stats.set_value('hostname
', socket.gethostname())
增加資料值 stats.inc_value(
'pages_crawled')
當新的值比原來的值大時設定資料 stats.max_value(
'max_items_scraped
', value)
當新的值比原來的值小時設定資料 stats.min_value(
'min_free_memory_percent
', value)
獲取資料 stats.get_value(
'pages_crawled')
獲取所有資料 stats.get_stats()
可用的資料收集器
memorystatscollector
乙個簡單的資料收集器。其在spider執行完畢後將其資料儲存在記憶體中。資料可以通過 spider_stats 屬性訪問。該屬性是乙個以spider名字為鍵(key)的字典
dummystatscollector
該資料收集器並不做任何事情但非常高效(因為什麼都不做(寫文件的人真調皮o(╯□╰)o))。 您可以通過設定 stats_class 啟用這個收集器,來關閉資料收集,提高效率。
不過,資料收集的效能負擔相較於scrapy其他的處理(例如分析頁面)來說是非常小的
使用例項,統計處理404頁面
#可能會影響統計因素
#spider_middlewares =
scrapy 資料收集
什麼是資料收集器?資料以key value形式存在,收集一些狀態,簡化資料收集的狀態 計算到底傳送了多少request等等統計資訊 如何對404頁面進行設定?通過response.status等於判斷狀態是否為404,然後把失敗的url新增到初始化的失敗列表中,設定失敗計數收集器 在spider類邏...
scrapy資料收集器資料遠端獲取
scrapy的資料收集器可以實時記錄爬蟲狀態資料,預設在爬蟲結束是列印 c anaconda2 lib site packages scrapy statscollectors.py class statscollector object def init self,crawler self.dum...
學習資料收集
github repos ios boost學習資料 android從入門到精通系列資料 安卓開 壇 ios iphone學習系列 教程 開源中國社群,遊戲開發 cocos2d 搭建cocos2d遊戲引擎環境 windows phone學習系列教程 開發培訓包 silverlight資料 乙個很不錯...