论文部分内容阅读
随着互联网的快速发展,Web网页数量也呈指数级增长,但由于计算资源、网络资源和存储资源的有限,传统搜索技术已经很难覆盖大众用户的不同需求了。因此,智能化、个性化、领域化的搜索引擎技术应运而生,垂直搜索引擎的研究成为了时下的热点研究方向。在搭建垂直搜索引擎之前,最重要的环节是如何利用主题爬虫从浩瀚的互联网中抓取到相关主题领域的信息内容。主题爬虫根据事先定义好的主题,分析爬行到的网页,计算爬行到的网页与给定主题的相似度,预测下一个要爬行的网页地址,以此来保证主题爬行的效率。因此,主题爬虫主要需要解决网页主题描述、网页主题识别和网页爬行策略三个核心问题。 本文的研究重点是基于LDA主题模型对抓取的网页进行主题分类判别,实现基于文本的启发爬行策略,并构建一种通用的分布式主题爬虫系统,使之具有准确性、可扩展性、高效性以及可移植性。主要内容包括:⑴设计并实现了基于LDA主题模型的网页主题分类识别方法。该方法将一个网页文本内容看成是一个隐性主题向量,而不是一个主题范围内的字词向量或者字词词袋,在算法性能和算法精度上都有更好的提升。⑵设计并实现了基于文本的启发爬行策略,网页主题分类识别方法能取得较好的爬行精度,而主题爬行策略才能直接提升爬虫的工作效率。爬行策略算法的实现采用的是Shark-Search算法,在抓取该网页前,利用“相似性引擎”思想对待抓取的网页与给定主题的相关性进行模糊性打分预测,决定该网页URL的抓取优先级。⑶设计并实现了一个基于Redis的分布式的主题爬虫框架系统,待抓取URL存储在Redis分布式缓存系统中,实现了主从同步和内容分发的机制。Master节点作为控制中心,管理和同步多个Slave节点,并负责整个爬虫系统的任务分发和数据存储。Slave节点是真正运行爬虫子系统的节点,上面运行着主题爬行子系统,该系统包括内容提取模块(Distiller)、主题识别模块(Classifier)和爬行策略模块(Searcher)。