使用scrapy 保存文件(json, csv)

上一篇我们介绍了使用scrapy保存图片的两种办法,这一篇介绍使用scrpay保存数据,格式为json 或者csv等 的处理方式
保存的方式分为两种,这次以小说阅读网为例,以爬取小说阅读网青春分类里面的小说,提取书名,作者,简介,将这些数据存入json。

方法一:朴素法

关于创建,Xpath提取不再过多介绍,这里直接上代码
1 提取所需元素,并在Items 传值
这里写图片描述
2 平时在命令行运行时,都是 scrapy crawl … ,这次我们写入scrapy crawl xiao -o xiaoshuo.json -s FEED_EXPORT_ENCODING=UTF-8
这里写图片描述
以上代码,xiao.py 是主文件的名字,xiaoshuo.json 表示保存的名字和格式,FEED_EXPORT_ENCODING=UTF-8表示编码格式
这里写图片描述
当然,也可以写成xiaoshuo.csv , xiaoshuo.xml, 还有 marshal, pickle等格式
csv格式
保存为xml格式

二 精致法

1 在数据提取,和Items传递值,与前面都是一样的,这里不同的是,需要在pipelines里写一些东西
这里写图片描述
其中类名为XiaoshuoPipeline为内置类,在其里面进行书写,filename可以根据你想保存的数据格式进行自定义,
最后两个函数名字也是固定的,不写的话也可以运行出来,但是得关闭文件,所以还是写上好
2 设置pipelines,前面也有提到过,
这里写图片描述
3 保存效果如图
这里写图片描述
这里写图片描述
可以看到,这种方法在进行输出的时候,并不需要在命令行修改输入命令,还是和以前一样,输入scrapy crawl ..
这种方法灵活性更高,也可以自己向要保存的表里添加数据。 所以,更建议使用后一种方法。

  • 8
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值