用scrapy组织csv导出

时间:2018-12-08 12:27:44

标签: python python-3.x web-scraping scrapy

我当前使用的是用于将数据导出到CSV文件的方法(主要是因为我不太了解管道)

custom_settings = {

    'FEED_FORMAT': 'csv',
    'FEED_URI' : 'datosAmazon.csv'

}

此自定义设置在我的蜘蛛内。

现在,我正在抓取不同类别的物品,例如笔记本电脑和手机。

问题是,当我去检查数据时,事情没有整理好,也许是笔记本电脑出现了,然后是手机,然后是2台笔记本电脑,手机等等。

我目前正以这种方式进入不同的类别

def start_requests(self):

    keywords = ['laptop', 'cellphone']

    for keyword in keywords:

        yield Request(self.search_url.format(keyword))

有没有一种方法可以使数据更有条理(最好是2个文件),或者是简单的管道解决方案。

1 个答案:

答案 0 :(得分:0)

没有唯一的设置方式可以实现您想要的。

也就是说,从自定义管道导出到多个文件非常简单:

  • scrapy.exporters.CSVItemExporter方法中创建多个导出器(open_spider)(可能将它们存储在字典中)
  • process_item方法中选择正确的导出器(基于项目)并调用其export_item
  • 通过close_spider方法关闭文件

别忘了激活您的管道:)