Chcem vedieť, čo sa deje počas šikanovania, ako môžem sledovať stav?
odpovede:
3 pre odpoveď č. 1Existujú dve metódy. Prvá metóda, tu je príklad z oficiálneho dokumentu.
telnet localhost 6023
>>> est()
Execution engine status
time()-engine.start_time : 8.62972998619
engine.has_capacity() : False
len(engine.downloader.active) : 16
engine.scraper.is_idle() : False
engine.spider.name : followall
engine.spider_is_idle(engine.spider) : False
engine.slot.closing : False
len(engine.slot.inprogress) : 16
len(engine.slot.scheduler.dqs or []) : 0
len(engine.slot.scheduler.mqs) : 92
len(engine.scraper.slot.queue) : 0
len(engine.scraper.slot.active) : 0
engine.scraper.slot.active_size : 0
engine.scraper.slot.itemproc_size : 0
engine.scraper.slot.needs_backout() : False
Ďalšie informácie nájdete v oficiálnom dokumente.
Druhá metóda sa zdá trochu jednoduchšia. Stav prehľadávača môžete získať nasledujúcim spôsobom:
self.crawler.stats.get_stats()
or
spider.crawler.stats.get_stats()
Tak stačí vytlačiť stav, ako sa vám páči.
0 pre odpoveď č. 2
Existuje aj rozšírenie tretej strany na monitorovanie stavu scrapy
Tento projekt bol raz postavený v scrapy, teraz je to nezávislé. scrapy-jsonrc kontroluje a monitoruje spustený webový prehľadávač Scrapy cez JSON-RPC a má webovú službu.
webová služba v scrapy dokumentoch staršej verzie.
Tento projekt používa StatcollectorMiddleware na ukladanie štatistických údajov o aktuálnych požiadavkách na redis. A majú aj webovú službu.