在前面的两节介绍了使用scrapy 爬取图片与保存到文件的方式,可以看到,我们所有的提取操作都是在主文件中进行的,虽然也能取出来数据,但是在对数据进行一些修改操作时,就比较麻烦了,而且代码臃肿,重复量高。
所以今天介绍如何在items.py 文件分离数据、操作数据。
这里以伯乐在线的全部文章为例,目的是提取每篇文章的标题、时间、点赞数、评论数、喜欢数,并且存到数据库中
1 我们先创建一个scrapy 项目,scrapy startproject bole ,
scrapy genspider job blog.jobbole.com ..
这里不一一介绍,
按照我们前两篇的方式,提取方式应该是像下面这样写:
但是这样写在对提取的数据进行下一步处理时就显得麻烦,所以今天这样写,
2 首先在items.py文件里引入一个ItemLoader类, ItemLoader 是分离数据的另一种方式,可以将数据的分离和提取分为两部分, 默认使用xpath,css数据提取方式,让代码更加整洁,更加清晰。 可以对一个数据使用多个处理函数,对代码的重用有很好的实现。
自