1.1 了解Python语言

Python是目前最为流行的编程语言之一,下面对它的历史和发展做一些简单介绍,然后介绍Python的基本语法,对于没有Python编程经验的读者而言,可以借此对Python有一个初步的了解。

1.1.1 Python是什么

Guido van Rossum在1989年发明了Python,而Python的第一个公开发行版发行于1991年。因为Guido是一部电视剧“Monty Python's Flying Circus”的爱好者,因此他将这种新的脚本语言命名为Python。

从最根本的角度来说,Python是一种解释型的、面向对象的、动态数据类型的高级程序设计语言。值得注意的是,Python是开源的,源代码遵循GPL(GNU General Public License)协议,这就意味着它对所有个人开发者是完全开放的,这也使得Python在开发者中迅速流行开来,来自全球各地的Python使用者为这门语言的发展贡献了很多力量。Python的哲学是优雅、明确和简单。著名的“Zen of Python”(Python之禅)这样说道:

“优美胜于丑陋,

明了胜于晦涩,

简洁胜于复杂,

复杂胜于凌乱,

扁平胜于嵌套,

间隔胜于紧凑,

可读性很重要,

即便假借特例的实用性之名,也不可违背这些规则,

不要包容所有错误,除非你确定需要这样做,

当存在多种可能,不要尝试去猜测,

而是尽量找一种,最好是唯一一种明显的解决方案,

虽然这并不容易,因为你不是Python之父。

做也许好过不做,但不假思索就动手还不如不做。

如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然。

命名空间是一种绝妙的理念,我们应当多加利用。”

2000年发布了Python 2.0版本,Python 3.0版本则于2008年发布,这一新版本不完全兼容之前的Python源代码。目前接触较多的是Python 2.7与Python 3.5,以及更新一点的Python 3.6,Python 3在Python 2的基础上做出了不少很有价值的改进,Python 3.5和Python 3.6也已逐步成为Python的主流版本,本书将完全使用Python 3作为开发语言。

1.1.2 Python的应用现状

Python的应用范围十分广泛,著名的应用案例包括:

●Reddit,社交分享网站,美国最热门的网站之一。

●Dropbox,文件分享服务。

●Pylons,Web应用框架。

●TurboGears,另一个Web应用快速开发框架。

●Fabric,用于管理Linux主机的程序库。

●Mailman,使用Python编写的邮件列表软件。

●Blender,以C与Python开发的开源3D绘图软件。

国内的例子也很多,著名的豆瓣网(国内一家受年轻人欢迎的社交网站)和知乎(国内著名问答网站)都大量使用了Python进行开发。可见,Python在业界的应用可谓五花八门,总结起来,在系统编程、图形处理、科学计算、数据库、网络编程、Web应用、多媒体应用等各个方面都有Python的身影。在2017年的IEEE Spectrum Ranking中,Python力压群雄,成为最流行的编程语言。众所周知,学习一门程序语言最有效的方法就是边学边用,边用边学。相信读者通过对Python爬虫的逐步学习,能够很好地提高对整个Python语言的理解和应用。

提示:为什么要使用Python来编写爬虫程序?Python的简明语法和各式各样的开源库使得Python在网络爬虫方向得天独厚,对于个人开发爬虫程序而言,一般对性能的要求不会太高,因此,虽然一般认为Python在性能上难以与C/C++和Java相比,但总的来说,使用Python有助于更好更快地实现所需要的功能。另外,考虑到Python社区贡献了很多各有特色的库,很多都能直接拿来编写爬虫程序,因此,Python的确是目前最好的选择。