- 在item中定义需要存储的字段,然后导入到爬虫文件中,将相应字段数据添加到item中,直接yield出去就能传递给pipline
- 如果要让pipline能接收到需要在settings中开启ITEM_PIPELINES
这里以默认的pipline为例(可以自定义pipline,定义好后按上图的方式添加,用不上的要注释掉,后面的数字表示优先级,越小越先执行),可以看到piplines文件中的LagouspiderPipeline已经接收到了item
- 通过pipline将数据存储到json文件中
由于前面文章只是爬取一条数据,拉钩的限频机制没有被触发,当爬取数据较多时就会触发该反爬机制,应对措施是在settings中开启限速DOWNLOAD_DELAY = 10,表示每十秒下载一次,添加USER_AGENT,COOKIES_ENABLED = False;
这次修改爬虫代码为爬取首页的所有详情页面url并解析,yield出去到pipline中
在我们自定义的pipline中使用到的是JsonLinesItemExporter,该类的好处是可以将每一个item数据作为一行,不用自己再去处理换行才做等,该pipline中的方法名都是固定名称不能改
scrapy爬虫(三)item及pipline
最新推荐文章于 2022-06-21 19:44:17 发布