第一章:Scrapy简介与安装

【如果你对Scrapy有过了解,可以略过本章节】

一、Scrapy是什么?

  1. Scrapy是一个健壮的爬虫框架,可以从网站中提取需要的数据。是一个快速、简单、并且可扩展的方法。Scrapy使用了异步网络框架来处理网络通讯,可以获得较快的下载速度,因此,我们不需要去自己实现异步框架。并且,Scrapy包含了各种中间件接口,可以灵活的完成各种需求。所以我们只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页上的各种内容。
  2. Scrapy并不是一个爬虫,它只是一个“解决方案”,也就是说,如果它访问到一个“一无所知”的网站,是什么也做不了的。Scrapy是用于提取结构化信息的工具,即需要人工的介入来配置合适的XPath或者CSS表达式。Scrapy也不是数据库,它并不会储存数据,也不会索引数据,它只能从一堆网页中抽取数据,但是我们却可以将抽取的数据插入到数据库中。

二、Scrapy架构

Scrapy Engine (引擎): 是框架的核心,负责Spider、ItemPipeline、Downloader、Scheduler中间的通讯,信号、数据传递等。并在发生相应的动作时触发事件。

Scheduler (调度器): 它负责接受引擎发送过来的Request请求,并按照一定的方式进行整理排列,入队,当引擎需要时,提供给引擎。

Downloader (下载器):负责下载引擎发送的所有Requests请求,并将其获取到的Responses交还给引擎。

Spider (爬虫):负责处理由下载器返回的Responses,并且从中分析提取数据,获取Item字段需要的数据,并将需要跟进的URL提交给Scrapy Engine,并且再次进入Scheduler。

Item Pipeline (项目管道):它负责处理Spider中获取到的Item,并进行进行后期处理(清理、验证、持久化存储)的地方.

Downloader Middlewares (下载中间件):引擎与下载器间的特定钩子,一个可以自定义扩展下载功能的组件。处理下载器传递给引擎的Response。

Spider Middlewares(爬虫中间件):引擎和Spider间的特定钩子,(处理进入Spider的Responses,和从Spider出去的Requests)

三、Scrapy的安装

ubuntu中的安装: 我的电脑上装的是Ubuntu 18.04 LTS这个版本的系统,该系统自带Python3.6,所以,只需要安装通用的Python包管理工具--> pip,就可以直接管理安装Scrapy框架。

第一步:安装pip

输入:

sudo apt-get install python3-pip

然后输入Y,回车,等待安装结束。

输入:

pip3--version

回车,如果显示pip版本信息,则安装成功。


第二步,通过pip安装Scrapy

首先安装安装scrapy需要的依赖库,否则scrapy会安装失败。安装方法同pip安装

sudo apt-get install python-dev
sudo apt-get install libevent-dev

最后安装Scrapy,在命令行中执行以下命令:

sudo pip3 install scrapy

回车,等待安装完成。

安装完成后输入scrapy显示如下信息即安装成功:

windows中安装:

首先去下载安装python,安装中选择安装pip,然后以管理员身份运行命令提示符,

输入:

pip3 install scrapy

回车等待安装结束。

安装过程中提示这个错误:

仔细阅读日志信息发现是安装lxml包时候出的错误(此时已经安装了一些依赖库)

知乎上找到的解决方案:

继续安装,又提示一个错误:

查看发现需要安装Twiste。按照上述方法再次安装Twiste

安装完成后,再次执行:

pip3 install scrapy

提示“Successfully installed scrapy-1.5.1”

终于安装成功!


安装过程总结【踩到的坑】:

Windows系统下安装Scrapy框架,首先要安装wheel库:

pip3 install wheel

然后去下载twiste和lxml离线包:

选择适合自己python版本下载,在下载存放的目录下安装:

pip3 install Twisted包名
pip3 install lxml包名

最后安装Scrapy:

pip3 install scrapy


四、本章小结

  1. 介绍Scrapy是个什么东西。
  2. 介绍Scrapy框架的各部分组成和用处。
  3. Scrapy在Linux系统和Windows系统下的安装与踩到的坑。(没有Mac,所以就没有做苹果系统下的安装)


五、Scrapy相关网站

Scrapy官方下载地址:

Scrapy项目官方地址:

Scrapy中文参考站点:


六、Scrapy相关推荐

编辑于 2021-03-25 16:38