Scrapy挂在CSV Parse上

时间:2013-08-30 17:43:04

标签: python csv scrapy

我已经看了很多解决方案,也许这只是我的错误。

我正在使用python / scrapy框架来抓取几个网站。这些网站为我们的数据集提供了.CSV文件。因此,我没有解析逐行提供的gridview,而是设置了scrapy来下载.CSV文件,然后打开CSV文件并将每个值写为Scrapy项。

我已将并发请求设置为1.我认为这会阻止Scrapy解析列表中的下一个请求,直到完成添加所有项目为止。不幸的是,.CSV文件越大,Scrapy解析行并将其作为项导入的时间就越长。在下一次请求之前,它通常会执行大约500kb CSV文件的一半。

     logfiles = sorted([ f for f in os.listdir(logdir) if f.startswith('QuickSearch')])
     logfiles = str(logfiles).replace("['", "").replace("']", "")
     ##look for downloaded CSV to open
     try:
        with open(logfiles, 'rU') as f: ##open
            reader = csv.reader(f)
            for row in reader:
               item['state'] = 'Florida'
               item['county'] = county ##variable set from response.url
               item['saleDate'] = row[0]
               item['caseNumber'] = row[2]
               ..
               yield item
     except:
        pass
     f.close()
     print ">>>>>>>>>>>F CLOSED"
     os.remove(logfiles)

我需要Scrapy完全导入所有CSV值作为项目,然后再转到下一个请求。有没有办法实现这个目标?

0 个答案:

没有答案