本书从教学的角度出发,全面地阐述了搜索引擎的原理和实践,包括:搜索引擎的基本原理与技术、搜索引擎的数据结构和搜索引擎的爬虫、信息处理技术、信息检索技术、信息检索评价技术、多媒体信息检索技术以及搜索引擎开发技术。
在教材的编写过程中,对基本概念、基础知识的介绍力求做到简明扼要;各章相互配合,又自成体系附有小结和习题,同时还有相关的实验及应用技术。
本书适合高等院校计算机科学与技术专业及相关专业的高年级学生和研究生阅读参考,也适合相关领域的工程技术人员参阅。
网络改变了人们的思维,改变了人们信息的获取方式,搜索改变了人们的生活,人们通过搜索引擎技术,筛选网络上的文字、声音、图像,通过超文本、超链接技术,对信息进行有效的获取和使用。搜索引擎的出现就好像是航船的指南针,引领着人们在网络中寻找自己想要的信息。不论是办公室工作人员,还是在校学习的学生,或者是科学研究人员,使用搜索引擎查询信息几乎成为每日必做的一件事情,搜索引擎已经成为人们的一项新的生活内容。
为了适应未来发展的需要,各个高校先后都开设了搜索引擎这门课程。我们编写本书的目的就是要系统地讨论和研究搜索引擎的基本理论,让读者学会构建自己的搜索引擎。
本书较为系统地阐述了搜索引擎的基本概念以及相关的技术,总共分为9章。第1章全面地介绍了搜索引擎的概念、搜索引擎的发展、分类及建立搜索引擎的关键技术。第2章讨论了搜索引擎的体系结构、工作原理,搜索引擎的数据结构、元搜索引擎以及智能搜索引擎的概念。第3章介绍了网页抓取技术,主要内容包括搜索引擎爬虫的工作原理、爬虫使用的关键技术和Robots协议。第4章介绍了用Python语言实现网络爬虫的开发技术,主要内容包括网络爬虫的常用技术、正则表达式、网络爬虫常用框架、网络爬虫实现技术。第5章介绍了网页信息预处理技术,主要内容有网页信息结构化、文本处理技术和PageRank算法。第6章介绍了信息索引技术,主要内容有顺排检索、倒排检索、后缀数组索引和文本压缩技术。第7章介绍了信息查询与评价技术,主要内容有信息检索的模型、常用的检索方法、查询服务以及相关性和评价指标查全率和查准率等。第8章介绍了多媒体信息检索技术,主要内容有多媒体的基本概念、多媒体数据压缩、多媒体内容的理解以及多媒体信息检索的关键技术。第9章介绍了基于Lucene的搜索引擎开发技术,主要内容有搜索引擎开发实例简介、环境的搭建与配置、网页搜集技术、网页预处理技术和查询服务。
本书可帮助读者对搜索引擎原理及开发技术有一个全面的了解和掌握,同时为更加深入地学习和研究搜索引擎打下良好的基础。希望本书的出版能够对搜索引擎的设计者、Web站点的管理员以及广大读者有所帮助,也希望它成为搜索引擎和信息检索有关领域学生学习的参考书。
本书是作者在多年的教学基础上,参考以前出版的教材和若干资料整理而成的。在编写过程中,对基本概念、基础知识的介绍做到简明扼要;各章相互配合并附有小结和思考题,同时还有相关的实验。建议本课程为40学时,其中讲课30学时,实验10学时。
本书由李群、袁津生共同编写。其中,李群编写了本书的第1~7章,袁津生编写了本书的第8章和第9章。全书的校阅和统稿由李群完成。由于编者水平有限,书中难免有疏漏和不当之处,请读者批评指正。
编者2020年8月