1、Scrapy下载和安装及创建目录
1)安装Scrapy模块
步骤:
(1)Scrapy 依赖大量第三方包,尤其是 Twisted,pip 自动下载的 Twisted 安装包有一些缺陷,因此需要先自行下载、安装 Twisted
-
搜索 twisted,找到
-
下载对应的 Twisted 版本,我下载的 Twisted-19.2.1-cp37-cp37m-win_amd64.whl,对应 python3.7 版本,64位操作系统;csdn下载 Twisted 安装包
-
cmd 窗口下
F:
cd F:\安装包\twisted安装包
pip install Twisted-19.2.1-cp37-cp37m-win_amd64.whl-
若出现:
则升级 pip 后再安装 Twisted 即可。
python -m pip install --upgrade pip
pip install Twisted-19.2.1-cp37-cp37m-win_amd64.whl
-
(2)安装 Scrapy
-
cmd 窗口下
pip install scrapy
2)创建Scrapy项目
-
创建 Scrapy 开发爬虫时,通常需要创建一个 Scrapy 项目,通过如下命令即可创建 Scrapy 项目
-
cmd 窗口下,创建 ZhipinSpider(直聘蜘蛛)项目
F:
cd F:\PycharmProjects
scrapy startproject ZhipinSpider -
得到 ZhipinSpider 项目(Scrapy 项目)
-
-
Scrapy 项目分析:
- scrapy.cfg:项目的总配置文件,通常无需修改
- ZhipinSpider/:项目 Python 模块,程序将从此处导入 Python 模块
- items.py 文件:定义了 items 类,负责向网上抓取对象
- pipelines.py 文件:管线,将爬取的数据写到 IO 节点,负责数据输出
- settings.py 文件:项目的设置文件
- spiders/:负责抓取的文件
3)Scrapy项目结构与架构
分析:
- 调度器发送请求,从互联网下载数据
- 获取数据后,由下载中间件把响应的文本传给蜘蛛
- 由 Scapy 引擎调用蜘蛛向响应的文本中提取它所感兴趣的数据
- Scapy 引擎将提取到的数据封装成 Item
- 传给 Pipeline
- Pipeline 负责把数据写入文件、写入数据库或打印控制台等
4)Scrapy核心组件
- 调度器:该组件由 Scrapy 框架实现
- 下载器:该组件由 Scrapy 框架实现
- 蜘蛛:该组件由开发者实现
- Pipline:该组件由开发者实现
5)查看 Scrapy 文档步骤
-
cmd 窗口下
python -m pydoc -p 8899
-
浏览器打开 http://localhost:8899/
-
搜索 scrapy 并点击查看
分析:
- Scrapy 与 urllib 模块请求调用的库不同,使用的第三方库
- 与正则表达式从网页源码中匹配数据相比:
- 正则表达式性能低且写起来麻烦(不推荐),使用 Scrapy 模块中的 xpath 或 css方 法则方便很多;
- 正则表达式对所有文档都可用,更通用;爬虫爬取的数据为 html 结构化文档, xpath 是专门用来提取这种结构化文档中的数据,相比更专业,高效。