网页抓取解密(网络爬虫的处理对象是互联网通用的爬虫框架流程介绍)

优采云 发布时间: 2021-10-05 20:01

  网页抓取解密(网络爬虫的处理对象是互联网通用的爬虫框架流程介绍)

  搜索引擎的处理对象是互联网网页。网页的数量是数百亿,所以搜索引擎面临的第一个问题是如何设计一个高效的下载系统,将如此大量的网页数据传输到本地,并在本地形成互联网。网页镜像备份。

  网络爬虫扮演这个角色。它是搜索引擎系统中非常关键和基本的组成部分。本文主要介绍与网络爬虫相关的技术。虽然爬虫技术经过几十年的发展在整体框架上已经比较成熟,但是随着网络的不断发展,也面临着一些具有挑战性的新问题。

  下图展示了一个通用的爬虫框架流程。首先,从互联网页面中仔细选择一部分网页,将这些网页的链接地址作为*敏*感*词*URL,将这些*敏*感*词*URL放入URL队列中进行爬取。爬虫依次从待爬取的队列中读取URL,通过DNS解析URL,将链接地址转换为网站服务器对应的IP地址。

  然后把它和网页的相对路径名给网页下载器,网页下载器负责下载页面的内容。对于本地下载的网页,一方面存储在页面库中,等待索引等后续处理;另一方面,将下载网页的网址放入已爬取的网址队列,记录爬虫系统已下载。网页网址,避免网页重复抓取。对于新下载的网页,提取其中收录的所有链接信息,并在抓取的URL队列中进行检查。如果发现该链接还没有被爬取,则将该URL放在待爬取的URL队列的末尾,然后在爬取调度中下载该URL对应的网页。通过这种方式,

  

  对于爬虫来说,往往需要进行网络重复数据删除和网络反作弊。

  以上就是一个通用爬虫的整体流程。如果从更宏观的角度考虑,动态抓取过程中的爬虫与互联网上所有网页的关系大致可以分为如图2-2所示的互联网页面。有5个部分:

  1. 下载网页集合:爬虫从网上下载到本地索引的网页集合。

  2.过期网页集合:由于网页数量最多,爬虫爬完一轮需要很长时间。在抓取过程中,许多下载的网页可能会过期。这是因为互联网网页处于不断动态变化的过程中,所以很容易产生本地网页内容与真实互联网网页的不一致。

  3. 待下载网页集合:上图中待抓取的URL队列中的网页,这些网页会被爬虫下载。

  4. 已知网页集合:这些网页没有被爬虫下载,也没有出现在待抓取的网址队列中,而是通过已经抓取的网页或待抓取的网址队列中的网页,它们总是可以在链接关系找到它们时,稍后被爬虫抓取并索引。

  5. 未知网页集合:部分网页无法被爬虫抓取,这部分网页构成未知网页集合。事实上,这部分网页所占的比例很高。

  根据应用的不同,爬虫系统在很多方面都有所不同。一般来说,爬虫可以分为以下三种:

  1. 批量爬虫(Batch Crawler):批量爬虫有比较明确的爬取范围和目标。当爬虫到达设定的目标时,它停止爬虫过程。至于具体的目标,可能不一样,可能是设置一定数量的网页被爬取,也可能是设置爬取所消耗的时间等等。

  2.增量爬虫(Incremental Crawler):增量爬虫与批量爬虫不同,它会不断地持续爬取,爬取的网页要定期更新,因为互联网的网页在不断变化,新网页很常见、要删除的网页或网页内容更改为通用。增量爬虫需要及时反映这种变化。因此,它们都在不断的爬取过程中,要么爬取新页面,要么更新现有页面。有网页。常见的商业搜索引擎爬虫基本都属于这一类。

  3.Focused Crawter:垂直爬虫专注于特定主题内容或属于特定行业的网页。比如健康网站,只需要从网上找健康相关的页面即可。页面内容就够了,其他行业的内容不考虑。垂直爬虫最大的特点和难点之一是如何识别网页内容是否属于指定的行业或主题。从节省系统资源的角度考虑,不可能把所有的网页都下载下来然后过滤。这太浪费资源了。爬虫往往需要在爬取阶段动态识别某个 URL 是否与主题相关。并且尽量不要去抓取不相关的页面以节省资源。垂直搜索网站

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线