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的值。

上一篇 下一篇

猜你喜欢

热点阅读