Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 允许重复分析的队列_Python_Multithreading_Queue_Scrapy - Fatal编程技术网

Python 允许重复分析的队列

Python 允许重复分析的队列,python,multithreading,queue,scrapy,Python,Multithreading,Queue,Scrapy,我基本上是一个scrapy和python的新手,我正在尝试找出如何使用scrapy并在一个脚本中分析所有数据。程序创建了一个json,我想在程序完成抓取后打开该json 发生的情况是,程序试图在scrapy完成之前打开json,因为实际的os命令已经执行。我相信答案可能是使用线程和队列,但我很难弄清楚它们是如何实现的。这是我的密码: def爬网: os.systemscrapy爬网平均值\u cur-o currency.json-t json infle=open'currency.json'

我基本上是一个scrapy和python的新手,我正在尝试找出如何使用scrapy并在一个脚本中分析所有数据。程序创建了一个json,我想在程序完成抓取后打开该json

发生的情况是,程序试图在scrapy完成之前打开json,因为实际的os命令已经执行。我相信答案可能是使用线程和队列,但我很难弄清楚它们是如何实现的。这是我的密码:

def爬网: os.systemscrapy爬网平均值\u cur-o currency.json-t json infle=open'currency.json' data=json.loadinfle 打印数据 爬行
我认为刮擦信号会起作用,这可能会有帮助,或者你可以写,从那里你可以做任何你想做的操作

在扩展中,spider_closed将帮助您完成任务

def spider_closed(self, spider):
   # perform your task here

这很奇怪,你确定它是想在scrapy完成之前加载文件吗?这没有多大意义,因为os.system会等待它完成。您可以尝试改用subprocess.check\u输出。