scrapy中pipeline的一点综合知识

2018-10-24 08:43:28来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

初次学习scrapy ,觉得spider代码才是最重要的,越往后学,发现pipeline中的代码也很有趣,

今天顺便把pipeline中三种储存方法写下来,算是对自己学习的一点鼓励吧,也可以为后来者的学习提供

绵薄之力,写的不怎么好,谅解

 

爬虫7部曲,虽然我不知道其他人是规划的

1.创建工程

scrapy startproject xiaohuawang

2.进入xiaohuawang目录 ,命名爬虫名和爬取的域名

cd xiaohuawang

scrapy genspider xhwang

此时在能看到如下结构

文件说明:

scrapy.cfg  项目的主配置信息,用来部署scrapy时使用,爬虫相关的配置信息在settings.py文件中。

items.py    设置数据存储模板,用于结构化数据,

pipelines    数据处理行为,如:一般结构化的数据持久化

settings.py 配置文件,如:递归的层数、并发数,延迟下载等。

spiders      爬虫目录,如:创建文件,编写爬虫规则

xhwang.py 爬虫主要代码

包含了一个用于下载的初始URL,如何跟进网页中的链接以及如何分析页面中的内容,提取生成 item 的方法。
为了创建一个Spider,必须继承 scrapy.Spider 类,且定义以下三个属性:
name:用于区别Spider。该名字必须是唯一的,您不可以为不同的Spider设定相同的名字。
start_urls:包含了Spider在启动时进行爬取的url列表。因此,第一个被获取到的页面将是其中之一。
后续的URL则从初始的URL获取到的数据中提取。
parse() 是spider的一个方法。被调用时,每个初始URL完成下载后生成的Response 对象将会作为唯一的参数传递给该函数。
该方法负责解析返回的数据(response data),提取数据(生成item)以及生成需要进一步处理的URL的Request 对象。

注意:一般创建爬虫文件时,以网站域名命名

3、编写item  (数据模板) 这里只编写两项

4、编写爬虫,爬虫主体代码还是挺容易理解的

5、编写pipeline(重点)此处编写了三种 (保存到mysql 、保存到json文件、以及将图片存储到本)

6、settings设置,为了使三种pipeline均生效需要设置如下 数字越小优先级越高

7、运行scrapy crawl xhwang

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:机器学习mlxtend_01

下一篇:初学python - 使用迭代查找一个list中最小和最大值,并返回一个t