美文网首页
scrapy middlerware中使用全局变量的另一种解决方

scrapy middlerware中使用全局变量的另一种解决方

作者: mutang | 来源:发表于2021-12-22 15:53 被阅读0次

这里列出我搜到的,知乎的这个回答,挺好:
https://www.zhihu.com/question/325290964

不过不适合我,我自己又写了文章记录:
scrapy中 统计器stats的使用、middlerware中获取stats和一个坑
最终方式,使用python内置的环境变量:
在启动方法中:

from scrapy.cmdline import execute
import os

def run():
    os.environ['cache'] = '0'
    execute('scrapy crawl delay'.split())


if __name__ == '__main__':
    run()
在middlerware中使用:
    print('环境变量',os.environ['cache'])
    cache_ = os.environ['cache']
    os.environ['cache'] = str(int(cache_) + 1)

输入:

环境变量 0
环境变量 1
之所以,这么麻烦,是因为我需要middleware中获取全局变量。
注意:环境变量的值,必须是字符串类型。

相关文章

网友评论

      本文标题:scrapy middlerware中使用全局变量的另一种解决方

      本文链接:https://www.haomeiwen.com/subject/oeiqqrtx.html