自己动手写网络爬虫(修订版)
上QQ阅读APP看书,第一时间看更新

前言

当你在网上冲浪时,你是否知道还有一类特殊的网络用户也在互联网上默默地工作着,它们就是网络爬虫。这些网络爬虫按照设计者预定的方式,在网络中穿梭,同时自动收集有用的信息,进行分类和整理,将整理结果提供给用户,以方便用户查找他们感兴趣的内容。由于网络爬虫的实用性,引起了很多程序员,特别是Web程序员的兴趣。

但是大多数网络爬虫的开发原理与技巧在专业的公司内部都秘而不宣,至今仍然缺少理论与实践相结合的专门介绍网络爬虫的书籍。本书尝试理论与实践相结合,深入透彻地讲解网络爬虫的原理,并且辅以相关代码作为参考。本书相关的代码在附带光盘中可以找到。

本书的两位主要作者在搜索引擎领域都有丰富的理论和实践经验。同时,还有多个程序员帮忙开发或编写了代码实现,例如Java实现异步I/O或对PDF文件的处理等。由于作者的日常工作繁忙,做得不够的地方敬请谅解。

作者罗刚在参加编写本书之前,还合作撰写过《解密搜索引擎技术实战》一书,但存在讲解不够细致、知识点不够深入等问题。此次修订,对一些过时的内容进行了更新。

本书从基本的爬虫原理开始讲解,通过介绍优先级队列、宽度优先搜索等内容引领读者入门;之后根据当前风起云涌的云计算热潮,重点讲述了云计算的相关内容及其在爬虫中的应用,以及带偏好的爬虫、信息抽取、链接分析等内容;为了能够让读者更深入地了解爬虫,本书在最后两章还介绍了有关爬虫的数据挖掘等内容。

由于搜索引擎相关领域也正在快速发展中,而且由于篇幅的限制,有些不成熟的内容,没有能够在本书体现,例如有关“暗网”的内容。随着技术的不断发展,我们将在今后的版本中加入这些内容。

本书适合需要具体实现网络爬虫的程序员使用,对于信息检索等相关研究人员也有一定的参考价值,同时猎兔搜索技术团队也已经开发出以本书为基础的专门培训课程和商业软件。目前的一些网络爬虫软件仍然有很多功能有待实现,作者真诚地希望通过本书把读者带入网络爬虫开发的大门并认识更多的朋友。

感谢开源软件和我们的家人、关心我们的老师和朋友、创业伙伴以及选择猎兔搜索软件的客户多年来的支持。读者可以通过QQ:270954928直接与作者取得联系。

编者