小白学爬虫-进阶-爬虫框架知多少
2020,努力做一个无可替代的人!
作者|小一
全文共2018字,阅读全文需7分钟
写在前面的话
这个时候,会Python 的你是不是想到了自动化?
正文
你可能要问,不要爬虫框架行不行?
这个时候,自动化它不香嘛?
PySpider
PySpider 提供 了 WebUI,爬虫的编写、调试都是在WebUI 中进行的
PySpider 调试非常方便 , WebUI 操作便捷直观
PySpider 支持 PhantomJS 来进行动态页面的采集
PySpider 中内置了Pyquery 作为选择器
提取一下上面四点的关键词:WebUI、调试、动态采集、Pyquery
Scrapy
Scrapy 采用的代码和命令行操作,但可以通过对接Portia 实现可视化配置(需要额外配置)
Scrapy 使用 parse命令进行调试
Scrapy 不主动支持动态页面采集,需要对接Scrapy-Splash组件(需要额外配置)
Scrapy 对接了 XPath、 css选择器和正则匹配
Scrapy 可以通过对接 Middleware、Pipeline、Extension等组件实现功能, 模块之间可扩展程度极高
Engine,引擎,用来处理整个系统的数据流处理,触发事务,是整个框架的核心。
Item,项目,它定义了爬取结果的数据结构,爬取的数据会被赋值成该对象。
Scheduler, 调度器,用来接受引擎发过来的请求并加入队列中,并在引擎再次请求的时候提供给引擎。
Downloader,下载器,用于下载网页内容,并将网页内容返回给蜘蛛。
Spiders,蜘蛛,其内定义了爬取的逻辑和网页的解析规则,它主要负责解析响应并生成提取结果和新的请求。
Item Pipeline,项目管道,负责处理由蜘蛛从网页中抽取的项目,它的主要任务是清洗、验证和存储数据。
Downloader Middlewares,下载器中间件,位于引擎和下载器之间的框架,主要是处理引擎与下载器之间的请求及响应。
Spider Middlewares, 蜘蛛中间件,位于引擎和蜘蛛之间的框架,主要工作是处理蜘蛛输入的响应和输出的结果及新的请求。
总结一下:
写在后面的话
碎碎念一下
爬虫系列大概会在这个月底结束,到此数据分析的基础内容除了可视化就都涉及到了,不知道你们学会了多少?
后面的分析和算法部分小一也在学习中,大家一起加油
好巧啊,你也读到这了!
点个
在看
让小一看到你