首页 > 应用开发 > Python > 好程序员Python培训分享网络爬虫的分类
好程序员Python 培训分享网络爬虫的分类, 网络爬虫按照系统结构和实现技术,大致可以分为以下几种类型:通用网络爬虫(General Purpose Web Crawler )、聚焦网络爬虫( Focused Web Crawler )增量式网络爬虫( Incremental Web Crawler )、深层网络爬虫( Deep Web Crawler )。实际的网络爬虫系统通常是几种爬虫技术相结合实现的。
一、通用网络爬虫
通用网络爬虫又称全网爬虫(Scalable Web Crawler ),爬行对象从一些种子 URL 扩充到整个 Web ,主要为门户站点搜索引擎和大 型 Web 服务提供商采集数据。由于商业原因 ,它们的技术细节很少公布出来。通用网络爬虫的结构大致可以分为页面爬行模块 、页面分析模块、链接过滤模块、页面数据库、 URL 队列初始 URL 集合几个部分。为提高工作效率,通用网络爬虫会采取一定的爬行策略。常 用的爬行策略有:深度优先策略、广度优先策略。
二、聚焦网络爬虫
聚焦网络爬虫(Focused Crawler ),又称主题 网络爬虫( Topical Crawler ),是指选择性地爬行那 些与预先定义好的主题相关页面的网络爬虫 [8] 。和 通用网络爬虫相比,聚焦爬虫只需要爬行与主题相关 的页面,极大地节省了硬件和网络资源,保存的页面 也由于数量少而更新快,还可以很好地满足一些特定 人群对特定领域信息的需求 。聚焦网络爬虫和通用网络爬虫相比,增加了链 接评价模块以及内容评价模块。聚焦爬虫爬行策略实 现的关键是评价页面内容和链接的重要性,不同的方 法计算出的重要性不同,由此导致链接的访问顺序也 不同。主要的爬行策略包括:基于内容评价的爬行策 略、基于链接结构评价的爬行策略 、基于增强学习 的爬行策略、基于语境图的爬行策略。
三、增量式网络爬虫
增量式网络爬虫(Incremental Web Crawler )是指对已下载网页采取增量式更新和只爬行新产生的或者已经发生变化 网页的爬虫,它能够在一定程度上保证所爬 行的页面是尽可能新的页面。增量式爬虫只 会在需要的时候爬行新产生或发生更新的页 面 ,并不重新下载没有发生变化的页面,可 有效减少数据下载量,及时更新已爬行的网 页,减小时间和空间上的耗费,但是增加了 爬行算法的复杂度和实现难度。增量式网络 爬虫的体系结构 [ 包含爬行模块、排序模块、 更新模块、本地页面集、待爬行 URL 集以及 本地页面 URL 集。
四、Deep Web 爬虫
Web 页面按存在方式可以分为表层网页( Surface Web 和深层网页( Deep Web ,也 称 Invisible Web Pages 或 Hidden Web )。表层网页是 指传统搜索引擎可以索引的页面,以超链接可以到达的静态网页 为主构成的 Web 页面。 Deep Web 是那些大部分内容不能通过静 态链接获取的、隐藏在搜索表单后的,只有用户提交一些关键词 才能获得的 Web 页面。例如那些用户注册后内容才可见的网页 就属于 Deep Web 。 2000 年 Bright Planet 指出: Deep Web 中可 访问信息容量是 Surface Web 的几百倍,是互联网上最大、发展 最快的新型信息资源 。 Deep Web 爬虫体系结构包含六个基本功 能模块 (爬行控制器、解析器、表单分析器、表单处理器、响应 分析器、 LVS 控制器)和两个爬虫内部数据结构( URL 列表、 LVS 表)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69913864/viewspace-2707487/ ,如需转载,请注明出处,否则将追究法律责任。