安装Scrapy库
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple scrapy
安装Scrapy库其它情况出现
如果安装成功, 直接去创建项目即可. 如果报错可能需要安装VC++14.0库才可以. 安装的时候一定不要死记安装步骤, 要观察报错信息. 根据报错信息进行一点点的调整, 多试几次pip. 直至success.
总共有五种安装Scrapy库方法
-
安装wheel
pip install wheel
-
下载twisted安装包, https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-brjig6rA-1649236994971)(image-20210803144429440.png)]
- 用wheel安装twisted.
pip install Twisted‑21.7.0‑py3‑none‑any.whl
-
安装pywin32
pip install pywin32
-
安装scrapy
pip install scrapy
总之, 最终你的控制台输入scrapy version
能显示版本号. 就算成功了
有些电脑会用到五种安装Scrapy库方法
创建Scrapy项目过程及文件含义(如下图)
在Scrapy下创建一个.py
Scrapy项目下文件含义
Scrapy 框架的简介
为了爬取网站数据而编写的一款应用框架,所谓的框架其实就是一个集成了相应的功能且具有很强通用性的项目模板
该框架提供了高性能的异步下载,解析和持久化等功能
框架示意图
整个工作流程
-
爬虫中起始的url构造成request对象, 并传递给调度器.
-
引擎
从调度器
中获取到request对象. 然后交给下载器
-
由
下载器
来获取到页面源代码, 并封装成response对象. 并回馈给引擎
-
引擎
将获取到的response对象传递给spider
, 由spider
对数据进行解析(parse). 并回馈给引擎
-
引擎
将数据传递给pipeline进行数据持久化保存或进一步的数据处理. -
在此期间如果spider中提取到的并不是数据. 而是子页面url. 可以进一步提交给调度器, 进而重复
步骤2
的过程
解释工作流程各各部分作用
-
引擎(engine)
scrapy的核心, 所有模块的衔接, 数据流程梳理.
-
调度器(scheduler)
本质上这东西可以看成是一个队列. 里面存放着一堆我们即将要发送的请求. 可以看成是一个url的容器. 它决定了下一步要去爬取哪一个url. 通常我们在这里可以对url进行去重操作.
-
下载器(downloader)
它的本质就是用来发动请求的一个模块. 小白们完全可以把它理解成是一个get_page_source()的功能. 只不过这货返回的是一个response对象.
-
爬虫(spider)
这是我们要写的第一个部分的内容, 负责解析下载器返回的response对象.从中提取到我们需要的数据.
-
管道(pipeline)
这是我们要写的第二个部分的内容, 主要负责数据的存储和各种持久化操作.