大家都知道 Python 语言现在非常火爆。但 Python 语言就和英语一样,如果只会 Python,就相当于只能
用英语进行日常会话,而真正的英语高手是可以充当专业领域(如 IT、金融、数学等)翻译的。Python 语
言也一样,仅仅学习 Python 语言是不够的,要想找到更好的工作,或想得到更高的薪水,需要学会用 Python
语言实现某一领域的应用。
现在 Python 语言应用的领域比较多,人工智能就是其中之一,人工智能不仅涉及 Python 语言本
身的技术,还涉及数学领域的知识,虽然比较火爆,但不是短时间内可以掌握的。然而,在众多的
Python 语言应用领域中,有一个领域与人工智能的火爆程度相当,但却不像人工智能入门那样难,这
就是爬虫。
那么为什么爬虫领域如此火爆呢?其实爬虫的基本功能就是从网上下载各种类型的数据(如 HTML、
图像文件等)。可不要小瞧这些下载的数据,因为这些数据将成为很多伟大应用的数据源。例如,著名的
Google 搜索引擎,每天都会有数以亿计的查询请求,而搜索引擎为这些请求返回的数据,都来源于强大的
爬虫。编写搜索引擎的第一步就是通过爬虫抓取整个互联网的数据,然后将这些数据保存到本地(以特定
的数据格式),接下来就是对这些数据进行分析整理,然后才可以通过搜索引擎进行查询。虽然搜索引擎的
实现技术非常多也非常复杂,但爬虫是最重要的,如果没有爬虫搜集数据,再伟大的分析程序也毫无用武
之地。
除了搜索引擎,人工智能中的重要分支——深度学习也需要爬虫抓取的数据来训练模型。例如,要想
训练一个识别金字塔的深度学习模型,就需要大量与金字塔相关的图片进行训练。最简单的方式就是使用
百度或 Google 搜索金字塔图片,然后用爬虫抓取这些图片到本地。这是利用了搜索引擎已经通过关键字分
类的特性,并且重新利用了这些分类的图片。
通过这些例子可以了解到,学习爬虫是进入更高端领域的钥匙,所以 Python 爬虫将成为第一项需要掌
握的热门技术。
尽管爬虫的基本功能是下载文件,但一个复杂的爬虫应用可不仅仅涉及网络技术。将数据下载后,还
需要对数据进行分析,提取出需要的信息,以及进行数据可视化,甚至需要一个基于 UI的可视化爬虫。所
以与爬虫有关的技术还是很多的。
由于 Python 爬虫涉及的技术很多,学习资料过于分散,因此,笔者觉得很有必要编写一本全面介绍
Python 爬虫的实战类图书,分享笔者对 Python 爬虫及相关技术的理解和经验,帮助同行和感兴趣的朋友快
速入门 Python 爬虫,并利用 Python 语言编写各种复杂的爬虫应用。笔者希望本书能起到抛砖引玉的作用,
使读者对 Python 爬虫及其相关技术产生浓厚的兴趣,并能成功进入 Python 爬虫领域。
本书使用 Python 3 编写,并在书中探讨了关于 Python 爬虫的核心技术。本书分为五篇,共20章,涵
盖了 Python 爬虫的基础知识、常用网络库、常用分析库、数据存储技术、异步数据处理、可见即可爬技术、
抓取移动 App、Scrapy、用 OpenCV 识别验证码等内容。本书还提供了大量的实例和项目,以便让读者可以
身临其境地体验 Python 爬虫的魅力。
限于篇幅,本书无法涉及 Python 爬虫及相关技术的方方面面,只能尽笔者所能,与大家分享尽可能多
2 Python 爬虫从菜鸟到高手
的知识和经验,相信通过对本书的学习,读者可以拥有进一步深入学习的能力,达到 Python 爬虫高手的程
度也只是时间问题。
最后,笔者希望本书能为 Python 爬虫及相关技术的普及,为广大从业者提供有价值的实践经验从而帮
助他们快速上手贡献绵薄之力。
作者
2023 年 7 月