论文部分内容阅读
随着internet的迅速发展,网上信息以爆炸性的速度不断丰富和扩展,如何在上百万的网站中快速有效地获取所需信息常常困扰着人们,搜索引擎(Search Engine)正是为解决用户的查询问题而出现的。通过搜索引擎,用户可以穿梭于放置在不同地点、隶属于不同网络的WWW网页,来获取所需要的各种信息。而在整个搜索引擎系统中,网络爬虫起着重要的作用,它是Internet搜索引擎的数据来源,它决定着整个系统的内容是否丰富、信息是否能够得到及时更新。本文首先从搜索引擎种类和组成出发,对搜索引擎的内部运行机制进行了初步的了解,其次对现在一般的网络爬虫的运行过程给予整体的介绍,以及网络爬虫的搜索策略和所面临的主要技术问题进行了简要的分析,然后通过了三个具体的例子对网络爬虫的内部结构进一步的分析,最后对于网络爬虫Inar(Information Navigation And Retrieval)体系结构设计与实现作了详细的分析。本文的研究内容主要包括以下几个方面:(1)通过对一般网络爬虫的分析研究,提出了Inar网络爬虫的体系结构,并结合主要的数据结构对爬虫的内部核心结构进行了深入的阐述。(2)在详细分析了Inar核心结构:URL调度, DNS解析, Connecting,异步I/O, HTML分析,URL过滤几个主要模块以后,分别给出了在linux平台下C/C++技术实现Inar的详细过程。(3)对于Inar的更新策略予以了设计与分析,提出了更新爬虫与发现爬虫的爬虫系统结构,使爬虫的功能更加独立,有效,提高了网络爬虫更新的效率。(4)对实验数据进行分析,通过试验数据分别与Google, The Internet Archieve爬虫进行比较,总结优缺点。(5)对运行结果和下一步本课题的实现内容做了分析和简单的展望。