scrapy中 统计器stats的使用、middlerware中
2021-12-22 本文已影响0人
mutang
在spider中:
def parse(self, response, **kwargs):
print(response.text)
self.crawler.stats.inc_value('c') # 设置一个数据收集,值为自增,每执行一次自增1
print('spider stats',self.crawler.stats.get_value('c')) # 打印数据收集值
在middlerware中;
print('middler ', spider.crawler.stats.get_value('c'))
此时有个问题:
scrapy中存在并发请求,默认是16,所以在spider中的stats可以实现自增长,并且能打印出来值。
但在middleware中,打印出来的却是以16的倍数出现(当然在自增长的条件成立时)
因此,middlerware中不能拿到准确的stats的值。