1、基于终端指令持久化存储:
(1)基于终端指令: 要求:只能将parse方法的返回值存储到本地的文本文件中 注意:持久化存储对应的文本文件类型只能是json,jsonlines,jl,csv,xml,marshal,pickle 指令:scrapy crawl xxx -o filePath 优点:简洁高效便捷 缺点:局限性较强(数据只能存储到指定后缀的文本文件中)
在终端输入指令:
scrapy crawl douban -o ./douban.csv
基于终端存储成功:
2、基于管道持久化存储
(2)、基于管道持久化存储: 编码流程: ①数据解析 ②在item类中定义相关的属性 ③将解析的数据封装存储到item类型的对象中 ④将item类型的对象提交给管道进行持久化存储的操作 ⑤在管道类的proce_item中要将其接收到的item对象中存储的数据进行持久化存储操作 ⑥在配置文件中开启管道 优点:通用性强
(1)数据解析
(3)将解析的数据封装存储到item类型的对象中
(4)将item类型的对象提交给管道进行持久化存储的操作
(2)在item类中定义相关的属性
(5)在管道类的proce_item中要将其接收到的item对象中存储的数据进行持久化存储操作
(6)在配置文件中开启管道
管道存储成功: