学科分类
目录
网络爬虫

永久性存储数据

使用Scrapy框架制作爬虫的最后一步就是将获取到的目标数据进行永久性存储。Scrapy保存数据的最简单的方法主要有四种,在运行爬虫的命令后使用-o选项可以输出指定格式的文件,这些输出文件的示例如下所示。

# 输出JSON格式,默认为Unicode编码
scrapy crawl itcast -o teachers.json
# 输出JSON Lines格式,默认为Unicode编码
scrapy crawl itcast -o teachers.jsonl
# 输出CSV格式,使用逗号表达式,可用Excel打开
scrapy crawl itcast -o teachers.csv
# 输出XML格式
scrapy crawl itcast -o teachers.xml

接下来,我们使用第一条命令将数据保存成JSON格式的文件,命令执行完后,可以看到,项目目录下已经创建了teachers.json文件,包含了获取到的老师数据。teachers.json文件的部分内容如图1所示:

img

图1 teachers.json文件的部分内容

从图1可知,文件中的中文显示的是Unicode格式,这是因为使用爬虫命令加上-o选项的方式,默认导出的就是Unicode字符。这种数据导出方式没有经过Scrapy的管道。

如果要对导出数据的编码格式进行设置,可以在Scrapy的管道(Item Pipeline)里进行,实际上,在使用Scrapy导出数据时一般都会使用Scrapy管道。但是由于管道的内容比较多,在本章中仅做简单介绍,我们将在本书的后续章节中对管道进行详细介绍。

点击此处
隐藏目录