scrapy框架下载安装及使用流程
定义:异步处理框架,可配置和可扩展程度非常高,python中使用最广泛的爬虫框架(足够简单,效率足够高,和jquery相似)-------》异步的意思就是,一个程序可以同时干很多事情
scrapy框架下载安装:
在cmd中输入pip install scrapy指令下载框架:对pip要求很高,如果有一个模块不兼容都下载不了
在cmd中输入pip list:检查是否安装成功
安装的时候如果出现问题:NoReturn,不能导入一个包或者模块,两种可能性:1.pip里面有一个模块或者包遗失了,2.pip版本不对
解决方式:
1.cmd中输入指令python -m pip install --upgrade pip==20.0.3
2.下载过后,不要直接pip install scrapy,而是退出cmd,重新进入cmd,执行pip install scrapy,
3.如果还是显示版本过低则需要下载最新版本python -m pip install --upgrade pip
4.如果还是显示NoReturn的话,那就需要重新安装pip,百度,下载安装后一定要重启电脑,
5.如果重装pip还是不行,则需要重新安装python,我现在使用的是python3.6.1版本稳定性不高,可以下python3.6.5稳定性相对高一些
scrapy框架的组件(组成scrapy框架的零件)和流程
组件:
1.引擎(Engine):整个框架核心
2.爬虫程序(Spider):数据解析提取
3.调度器( Scheduler):维护请求队列
4.下载器(Downloader):获取响应对象
5.管道文件(PipLine):数据库入库处理(持久化数据)流程:
1.引擎找到爬虫程序,爬虫程序返回网页地址给引擎
2.把网页url地址给调度器,入队列,排序,保证爬取页面不重复(不能你爬第一页,它也爬第一页)
3.调度器出队列,把url地址返回给引擎
4.引擎把url地址给下载器,让下载器去发送请求,
5.下载器下载的response响应对象返回给引擎
6.引擎把响应到的数据文件交给爬虫文件(解析提取数据) (不能越级直接给管道)
7.爬虫文件把解析提取的数据信息返回给引擎
8.引擎把数据给管道,管道入库(数据库等)