【修订中】python入门之scrapy学习

229 阅读1分钟

Scrapy框架 什么是scrapy Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取。

Scrapy使用了Twisted异步网络框架,可以加快我们的下载速度。(Twisted(中文翻译)扭曲)

入门文档:scrapy-chs.readthedocs.io/zh_CN/0.24/…

image.png 补充:
异步:①调用在发出之后,这个调用就直接返回,不管有无结果
②非阻塞:关注的是程序在等待调用结果(消息,返回值)时的状态,指在不能立刻得到结果之前,该调用不会阻塞当前线程
③阻塞和非阻塞指的是拿到结果之前的状态
④异步和同步指的是整个过程

Scrapy的工作流程

image.png

流程图 image.png

image.png scrapy的入门
先装环境

文件目录
scrapy.cfg #项目的配置文件
items.py #提取要爬取的字段,字典保存爬取到的数据的容器
middlewares #自定义中间件的地方
pipelines.py #管道,保存数据
settings.py #项目的设置文件 设置文件,UA,启动管道
spiders #存储爬虫代码目录
itcast.py #写爬虫的文件
爬虫步骤:
1.创建一个scrapy项目
scrapy startproject mySpider #mySpider是项目名字
2.生成一个爬虫
scrapy genspider itcast itcast.cn #itcast是爬虫名字,"itcast.cn"限制爬虫地址,防止爬到其他网站
3.提取数据
完善spiders,使用xpath等方法
3.保存数据
pipelines中保存数据

image.png

image.png 使用pipeline 需要在配置文件中开启:

image.png return 不能取消,如果在下一个需要 ,上一个必须有返回

image.png

image.png

image.png

image.png

image.png

![image.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/22e5855f9fa04999b9d5502172636c3a~tplv-k3u1fbpfcp-watermark.image)

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png