Scrapy框架的学习(1.scrapy的概念以及scrapy的工作流程)
scrapy的概念
1.为什么要学习Scrapy?
因为会让我们的爬虫更快、更强
2.什么是scrapy?
(1) Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取
*** 框架:特定需求下的所有功能*** , 知道框架和模块的区别
(2)Scrapy 使用了 Twisted['twɪstɪd]异步网络框架,可以加快我们的下载速度。
(3)Scrapy的官方文档 http://scrapy-chs.readthedocs.io/zh_CN/1.0/intro/overview.html
3. 异步与非阻塞的区别 ( 补充)
(1) 同步或异步指的是这样的一个过程
阻塞或非阻塞指的是拿到结果之前的状态
(2) 异步:调用在发出之后,这个调用就直接返回,不管有无结果
(3)非阻塞:关注的是程序在等待调用结果(消息,返回值)时的状态,指在不能立刻得到结果之前,该调用不会阻塞当前线程。
scrapy的工作流程
1. 之前使用的爬虫流程,获取响应内容,提取数据、保存数据等
如图:
2.scrapy的爬虫流程
图的解释:
(1) 中间 Scrapy Engline (scrapy 引擎) : 这个四个大模块是独立的,彼此之间没有联系,之间的联系都是通过
scrapy引擎来进行调度,scrapy引擎让谁执行谁就执行,类似于指挥交通的交警
(2)Downloader Middlewares (下载中间键):引擎会先把Requets对象交给下载中间键再然后交给Downloader
(3) Spider Middlewares (爬虫中间键) : 引擎会先把response交给爬虫中间键再交给Spiders
(4) 因为有引擎的存在,所以可以在中间键进行一些处理
- Shiro权限控制框架入门1:Shiro的认证流程以及基本概念介绍
- Scrapy框架的学习(8.scrapy中settings.py里面配置说明以及怎样设置配置或者参数以及怎样使用)
- Scrapy框架的学习(5.scarpy实现翻页爬虫,以及scrapy.Request的相关参数介绍)
- SSM框架的流程学习笔记以及每一步容易出错的地方
- Android网络框架volley学习(二)工作流程分析
- Scrapy框架的学习(3.pipeline介绍以及多个爬虫的pipeline的使用)
- 【Scrapy-01】安装、创建项目、创建爬虫、简单爬取百度title的例子以及工作流程简介
- Android Gradle学习记录4 Gradle概念及工作流程
- Scrapy框架的学习(4.scrapy中的logging模块记录日志文件以及普通的项目中使用)
- Scrapy框架的学习(6.item介绍以及items的使用(提前定义好字段名))
- 开发数字货币教程DApp框架工具以及工作流程
- Android Camera 流程学习记录(零)—— 碎碎念以及 Android 框架初识
- linux驱动学习--第十六天:第十章 Linux 中断与时钟 (一)概念、流程和框架
- Scrapy框架的工作流程
- 自定义View(一)---View的基础概念、工作流程以及生命周期的理解
- Scrapy框架的学习(7. 了解Scrapy中的debug信息以及Scrapy shell的使用)
- Scrapy框架的学习(9.Scrapy中的CrawlSpider类的作用以及使用,实现优化的翻页爬虫)
- linux驱动学习--第十七天:第十章 Linux 中断与时钟 (二)概念、流程和框架(2013-06-19 22:31)
- Android 4.4 Kitkat Phone工作流程浅析(一)__概要和学习计划
- 直播概念和流程框架