2.2 基于宽度优先搜索的网页爬虫演示

  要抓取一个网页,分析一个网页,是一件很容易的事情。那么对于搜索引擎来说,要获取的资源是互联网上的大量的网页,如何抓取就是一个策略的问题。在这里,我们使用宽度优先的策略进行抓取。

  宽度优先的策略是图论中的一种方法,在网页抓取中,可以把一个页面看做一个点,页面与页面之间的链接关系看做有向边。具体来说,如图所示:

图片来自:http://www.cnblogs.com/tuhooo/p/5447459.html

  A页面链接到了B,C,D,E,F页面,E页面又链接到了H,I页面,F页面又链接到了G页面。那么通过宽度优先的策略抓取这些页面,抓取顺序如图:

图片来自:http://www.cnblogs.com/tuhooo/p/5447459.html

  假设给定的初始链接(抓取起点)为A页面,那么根据宽度优先抓取,会先抓取距离A页面为1的页面B,C,D,E,F,然后再抓取距离A页面为2的页面G,H,然后再抓取距离A页面为3的页面I,以此类推。可以看出,这种抓取策略看起来非常合理,实际上也是抓取网页的最常用的策略。

  这是这个宽度优先策略爬虫大致思路。下一节会讲解这个程序的实现原理。

(抱歉,此处原来有github源码,但是感觉当时写的太丑了,打算寒假重新整理好再发出来)

posted @ 2017-05-05 00:00  lvmememe  阅读(685)  评论(0编辑  收藏  举报