首页 > 搜索引擎 > “暗网”信息的抓取(2) (Crawling the Hidden Web)

“暗网”信息的抓取(2) (Crawling the Hidden Web)

写在最前面:《“暗网”信息的抓取(1) (Crawling the Hidden Web)》中,讲述了一些关于暗网信息抓取的基本理论。本文主要对《Crawling the Hidden Web》中提到的根据上述理论所研发的爬虫HiWE进行介绍说明。

HiWE: Hidden Web Exposer

1. HiWE爬虫和传统爬虫处理流程的对比:

FlowChart: Traditional Crawler Vs. HiWE

FlowChart: Traditional Crawler Vs. HiWE

由上图可以看出,传统的爬虫的处理,都是从一个Url队列中选取Url,然后去抓取对应的页面,然后提取页面中新发现的链接,把它们加入到等待下载的Url队列中。不断循环这个过程即可。

而HiWE爬虫,比传统的爬虫多了以下几个处理环节:

(1)Form Analysis(表单分析):根据《暗网信息的抓取(1)》中的方法对表单进行建模。

(2)Value assignment and submission(取值和表单提交):同样根据《暗网信息的抓取(1)》中的方法,产生最优的取值组合,然后进行表单提交。

(3)Response Analysis(应答分析):分析Web服务器返回的应答包,判断返回的页面的有效性。如果返回的结果是无效的,那么可以把这个信息反馈给第(2)步中的取值过程,做相应的调整。

(4)Response Navigation:把页面中提取出来的链接,立即进行抓取,只抓取指定深度(Depth)的。在这里可其实也可以把这些链接加入到等待下载的Url队列中。只不过在HiWE的实现中,采取了立即抓取的策略。

2. HiWE爬虫的架构

下图所示是HiWE爬虫的架构:

HiWE Architecture

HiWE Architecture

从上图可以看出, HiWE的主要功能模块有:

(1)CrawlManager: 用来协调整个抓取过程,包括Url的选取,页面的下载。(在HiWE的实现中,CrawlManager被配置为只抓取指定站点中的Url)

(2)Parser:收到CrawlManager发过来的下载完成的页面,进行页面链接提取,并把提取出来的链接加入到等待下载的Url队列中。

(3)FormAnalyser: 收到Parser提取完链接的页面,进行页面中表单分析。

(4)FormProcessor: 处理由FormAnalyser分析出的表单,对其进行建模,发请求下载相关页面。

(5)ResponseAnalyser: 分析Web服务器返回的表单页面的下载结果,并把结果反馈给FormProcessor。

(6)LVSManager: 用来管理LVS Table,为FormProcessor提供标签查询和结果反馈的接口。另外,它还为各种各样的数据源提供了加入(L,V)项的接口,用来更新和完善LVS Table。

3. HiWE设计过程中一些相关的细节

因为我比较关注的是如何对暗网中的页面的建模,以使之方便让爬虫来抓取,还有抓取暗网网页的爬虫(HiWE)的架构设计。因此,关于HiWE实现过程的一些细节,在这里我就不做介绍了,具体可以参考《Crawling the Hidden Web》一文中的介绍。

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
您必须在 登录 后才能发布评论.