![Python 网络爬虫实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/167/26944167/b_26944167.jpg)
1.2 Python开发环境配置
Python在PC三大主流平台(Windows、Linux和OS X)都可使用。在这里只讲解Windows和Linux下的开发环境配置。Windows平台以Windows 7为例,Linux平台以Debian 8系统为例。Python目前主要有两个版本,Python 2和Python 3。目前,Python 2的最终版本是Python 2.7.11, Python 3的最终版本是Python 3.5.1。Python 3虽然功能更加强大,但暂时Python 2的使用人数更多,本书中全部选择Python 2.7为例。
1.2.1 Windows下安装Python
(1)打开Chrome浏览器,在地址栏输入Python官网地址http://www.python.org,如图1-1所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0015_0001.jpg?sign=1739272837-Rpwx2RrKwR0P1jLCt61KjLUbQYYlPWMI-0-2cb7a4965d01f22ec604ee2470b23c3a)
图1-1 Python官网
(2)单击Python 2.7.11,进入Python 2.7.11的下载页面,如图1-2所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0016_0001.jpg?sign=1739272837-rjdzcUp9jS0zsagxL9XDtz19rGYeYFQ3-0-21b4d590c83d0675c845d65dd64625f2)
图1-2 Python下载
(3)按照安装的Windows系统选择下载的安装文件。示例系统是Windows 764位版本,所以在此下载的是Windows x86-64 installer。
(4)下载完毕,得到安装文件python-2.7.11.amd64.msi。双击该文件图标,开始安装Python 2.7,如图1-3所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0016_0002.jpg?sign=1739272837-theHRwrpAgeVKYfobMruVCh7LwkkIyom-0-d67248fb9cc48d803c01d6665b7cff5d)
图1-3 安装Python
(5)单击Next按钮,设置Python安装路径,如图1-4所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0017_0001.jpg?sign=1739272837-kGmtkgyVaACYRfXHGHsIJq4Pqy2JyMXO-0-8effb975ef86964fab7801f7f7386440)
图1-4 设置Python安装路径
(6)选择或者填入Python的安装路径后,单击Next按钮,进入Python组件设置,如图1-5所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0017_0002.jpg?sign=1739272837-U9SLff0hdYMvbFAHopfkjJ8mLMkZnCWV-0-9871a39ec7a1bb7554cdec9bebed26a3)
图1-5 Python组件选择
默认情况下Add python.exe to Path这个组件是未选择的,它的作用是将Python的路径加入系统环境中。请将它选择上,单击Next按钮,开始安装Python,如图1-6所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0018_0001.jpg?sign=1739272837-FeDUQlqDDxjhtpSIsIezrX3tv3WUH5Tu-0-32c5e741f5a0f0e56b270e6b13f70b55)
图1-6 安装Python
(7)单击Finish按钮,整个安装程序完毕。验证Python是否安装成功。单击桌面左下角的“开始”菜单,在地址栏输入cmd.exe后按Enter键,打开Windows系统命令行程序,如图1-7所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0018_0002.jpg?sign=1739272837-T8g55iEaa9uK6BcnsXiPx5d7ZiS3c6jN-0-4a766796138c8c82d5b4256939606765)
图1-7 打开系统命令行工具cmd.exe
(8)执行命令,验证Python,如图1-8所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0019_0001.jpg?sign=1739272837-Eq7c3HA4mCTzLw0BpQ6lPZATDtqh6yfO-0-236c8486fed1395461ae86a33e38d29f)
图1-8 验证Python
好了,由此可见Python已安装成功,并已将路径添加到环境变量。单击桌面左下的“开始”|“所有程序”菜单,单击Python 2.7菜单,就可以看到Python的菜单,如图1-9所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0019_0002.jpg?sign=1739272837-0VkRDPqs92ZFcP76K3dANZ9mGpsNNwRM-0-a9da22f62d202ce94a1f11315306816c)
图1-9 Python 2.7菜单
提示
在安装Python的同时也安装了Python自带的IDE——IDLE和本地的模块说明文档。这个文档的说明很详细,一般只用看这个文档就足够了。
至此Python已在Windows上安装验证成功,可以愉快地使用Python了。
1.2.2 Windows下安装配置pip
上文中说过,Python有几乎无限的第三方模块。如何安装这些第三方模块呢?这里就不得不说到easy_install和pip了。
easy_install和pip都是Python的模块安装工具,有点类似于Debian系统的apt-get, Fedora系统中的yum,或者是Windows系统中的QQ软件管理器,都是一键安装软件工具,所不同的是它们只负责安装Python模块。老版本中的Python只有easy_install。pip可以认为是easy_install的高级版本,所以pip和easy_install任选其一都可以,个人建议使用pip。在安装Python时已经选择了pip组件(如图1-5所示),就无须再次安装pip了,直接开始配置即可。
因为pip的服务器,也就是安装源在国外,基于国内糟糕的网络环境,使用pip安装python第三方模块将是一个很痛苦的过程。好在还有变通的方法,在国内也有pip的镜像源。只需要在pip的配置文件中将pip的安装源指向国内的服务器,这个问题就解决了。
根据pip的指南,Windows中pip的配置文件是%HOME%/pip/pip.ini(具体到当前环境,Windows的当前用户是king,所以配置文件位置就是C:\Users\king\pip\pip.ini)。默认情况下pip文件夹和pip.ini文件都未被创建,需要自行创建。按照指南创建好文件夹和文件后,修改pip.ini文件,如图1-10所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0020_0001.jpg?sign=1739272837-KbF4bL5zCZoyzGPKNn60ABxslrl6e2f0-0-8067314f8d2f7044a7b1b08f7cc7994e)
图1-10 修改pip.ini
图1-10中准备了3个pip源,任选其一都可以。选择的方法就是在不需要的源地址前面加上#符号。下面来验证一下修改源地址是否成功,执行命令:
python -m pip install -upgrade pip
此命令的作用是更新pip源,结果如图1-11所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0020_0002.jpg?sign=1739272837-RBjE42L5VxWAkjFoPJJPAkYCkySzLfFt-0-c35a7a72a88634624a49c9d3d356d276)
图1-11 更新pip源
可以看出,配置文件中的新源已经起作用了。测试一下pip。单击桌面左下角的“开始”菜单,在地址栏中输入cmd.exe后按Enter键,打开Windows系统命令行程序。执行命令,如图1-12所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0021_0001.jpg?sign=1739272837-naluHV5Ul2f3vzaI4DYXIcLEnvrcczmY-0-981b694ad37f02042c188aa18b877749)
图1-12 测试pip
到此pip已完全配置完毕。
1.2.3 Linux下安装Python
即使同一个版本的Linux,也因为不同的桌面环境而变得复杂起来。丰富的软件,是Linux的成功之处。没有统一的标准,却是Linux不能做大做强的关键所在。为避免桌面环境的差异,这里统一使用Putty来连接Linux。对于Python而言,任意版本的Linux都没有任何的区别。这里演示用的Linux系统为Debian 8.0, IP地址为192.168.2.80。下面,先用Putty连接这个Linux机器。
(1)双击Putty图标,打开Putty.exe,填入IP地址和端口信息,如图1-13所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0021_0002.jpg?sign=1739272837-b3TaggpzvA4b9gKlUnM2bmnXf3wetJwn-0-55df553c3dfed3429c173f7ff260a34b)
图1-13 Putty连接设置
(2)单击Open按钮,第一次使用Putty登录Linux会有一个安全警告提示,如图1-14所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0022_0001.jpg?sign=1739272837-zpypQnZewV5pGQBdQEu2srhQFGE5PRBY-0-56b96650e83f35e1689f98c9615fd999)
图1-14 Putty安全警告
(3)单击“是(Y)”按钮,进入了Linux的登录界面,如图1-15所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0022_0002.jpg?sign=1739272837-MaKtsaHMjvemEIG0YH4KFUhibVZU8WTh-0-6adeb22286975ac9244a1f97ba3c0d2a)
图1-15 登录Linux
(4)输入用户名和用户密码后(用户密码不回显),登录到了Linux。
Debian Linux默认安装了Python 2和Python 3(几乎所有的Linux发行版本都默认安装了Python)。Python命令默认指向Python 2.7,验证一下Python的路径,执行命令:
whereis python ls -l /usr/bin/python ls -l /usr/bin/python3
执行的结果如图1-16所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0023_0001.jpg?sign=1739272837-fID836niWwdD5FbL9nN8AKd4ze9gFX0g-0-16832a1b8323e5054bd3b99faae62d09)
图1-16 查看Python路径
再来看看Python的版本信息,执行命令:
python2-V python3-V
执行的结果如图1-17所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0023_0002.jpg?sign=1739272837-PoE812CzJeGfGshTtUx82ttjY98WCA8S-0-a475b72b950124295bf2effbd19c0d87)
图1-17 Python版本信息
从图1-17中可以看出,Linux上安装的Python的版本与官网上的最新版本(Python 3.5.1-Python 2.7.11)是不同的。这是正常现象,一般来说Debian Linux会使用软件的最稳定版本,而Ubuntu Linux会使用软件的最新版本。
1.2.4 Linux下安装配置pip
如同Windows中的Python一样,Linux中的Python同样需要一个模块安装的管理工具,可以是easy_install,也可以是pip。遗憾的是多数Linux版本并没有默认安装这个管理工具(Debian可以用apt-get安装大部分的Python第三方模块,只有极少数的模块不能使用apt-get安装),所以得自己安装它了。
从Debian Linux中安装pip,执行命令:
su - apt-get install python-pip
执行结果如图1-18所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0024_0001.jpg?sign=1739272837-mA5agYzGd11iaoFFDQ81yQM52xBhuygH-0-3915fb8228da067c07f426595c25c086)
图1-18 安装pip
输入su -命令后再输入系统root用户的登录密码。该命令的作用是使用root用户登录系统,并使用root用户的环境变量。apt-get install python-pip作用是使用apt-get命令安装python-pip这个工具包。最后输入y确认执行命令,开始安装python-pip。
提示
Linux下安装软件都必须有root权限,可以直接转换成root用户安装,也可以在sudoers里添加用户和权限。
安装python-pip后,退出root用户环境,查看pip版本,如图1-19所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0024_0002.jpg?sign=1739272837-soQFF1H6tmHLDUOUzAVMVlWr3l0uN6rq-0-8654b791ee2075557ac9a54d9c976668)
图1-19 验证pip
最后还要将pip的更新源改成国内源。根据pip的指南,在Linux下pip的配置文件是$HOME/.pip/pip.conf,执行命令:
su - cd pwd mkdir .pip cd .pip cat > pip.conf << EOF [global] index-url = https://pypi.mirrors.ustc.edu.cn/simple #index-url = http://pypi.hustunique.com/simple #index-url = http://pypi.douban.com/simple EOF cat pip.conf exit
执行结果如图1-20所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0025_0001.jpg?sign=1739272837-UZqdujlK9HMRVpZi1N9WVKbEjmNKxxz0-0-c671f9330620d53a14cf54557d3016ab)
图1-20 修改pip.conf
验证一下修改源地址是否成功,执行命令:
su - python -m pip install -upgrade pip exit
结果如图1-21所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0026_0001.jpg?sign=1739272837-wey9rn45NVvq6D8rAHoyA7WeaGIdz1xQ-0-79b74502632cc451f16a0f10c9594d5e)
图1-21 更新pip源
从图1-21可以看出pip源已经开始起作用了。下面来测试一下pip,如图1-22所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0026_0002.jpg?sign=1739272837-5cXOFY9i5tRtdm03wRKMPUERWzC8Mcoa-0-3bb13496993eecd0b95aa0cbc563d98f)
图1-22 测试pip
到此pip已完全配置完毕。和Windows下的pip不同,Linux下的pip可以用root安装模块,也可以使用一般用户来安装模块。推荐使用root用户来安装,因为有些模块安装需要root特权,root安装的模块一般用户都可以使用。
1.2.5 永远的开始:hello world
似乎所有的编程语言第一个程序都是hello world。Python也不能免俗,下面分别从Windows和Linux下创建hello.py。
1.Windows下创建hello.py
(1)单击桌面左下的“开始”|“所有程序”菜单,单击Python 2.7菜单,单击IDLE (Python GUI)菜单,如图1-23所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0027_0001.jpg?sign=1739272837-3rfSg6fKkGHzWGeY9mhbh0V5lWma2xpJ-0-fc230da7592d5a522e5c1754a7d3ad51)
图1-23 打开IDLE
(2)此时打开的是Python shell交互界面,再单击File|New File菜单,如图1-24所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0027_0002.jpg?sign=1739272837-hUNdCad675UR6zlZ0MR8gFXBv4M3K3wW-0-2f1c73291e04674af9514e4891d742c1)
图1-24 打开IDE
(3)用IDLE的IDE打开了一个新文件,在此新文件中编辑hello.py,如图1-25所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0027_0003.jpg?sign=1739272837-QKLxkCIJTtWuKRBDsL9tEWh5YZjhE61w-0-88806a5371fbb56d5ed1eb25d8ea3ca2)
图1-25 编辑hello.py
(4)单击该IDE的File|Save As …菜单,将已编辑好的代码保存,如图1-26所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0028_0001.jpg?sign=1739272837-sGk38mv0Xd9D6BNgMRUGt0D1LFDXS5SH-0-9ce30914dd1ce7b3ab957ee9190a3a12)
图1-26 保存代码
(5)选择保存文件位置。这里选择的是保存到桌面,文件名为hello.py,如图1-27所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0028_0002.jpg?sign=1739272837-ZoQZo04SrP0YXkH6q8jTUKAccIVTL1FH-0-ee851daccfe46863a0c3d97645ff8da3)
图1-27 选择文件保存位置
(6)单击“保存”按钮,将hello.py保存到桌面。按Shift按钮,同时右击桌面空白处,如图1-28所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0029_0001.jpg?sign=1739272837-Cz63rLKdjjvybJcEXKYS86a29XMA9TaA-0-d80a8817af84392f7d1c3dc741537bc3)
图1-28 打开Windows命令行工具
(7)单击“在此处打开命令窗口”,打开了命令行工具,执行命令:
python hello.py
执行结果如图1-29所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0029_0002.jpg?sign=1739272837-DY8Mc5AyOEfDDgCINW6cepKPPHEG5a00-0-e6cb9ec94da3f22c215600acb334cd86)
图1-29 执行hello.py
至此,Windows下的hello.py执行完毕。
2.Linux下创建hello.py
(1)使用Putty连接到Linux,执行命令:
mkdir -pv code/python cd ! $ cat > hello.py << EOF #! /usr/bin/env python #-*- coding: utf-8-*- __authon__ = 'hstking hstking@hotmail.com' if __name__ == '__main__': print("hello world! ") print(u"你好,Python! ") EOF
执行结果如图1-30所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0030_0001.jpg?sign=1739272837-LQemj7wjde91TZnYLk7Gn83WbLUg8vgX-0-b6bf1c011fd9b166d0741747dd839904)
图1-30 编辑hello.py
(2)然后在Putty中执行命令:
python hello.py
执行结果如图1-31所示。
![](https://epubservercos.yuewen.com/D9510D/15367256205356206/epubprivate/OEBPS/Images/figure_0030_0002.jpg?sign=1739272837-mO7oWVw8ZrMKF4TvYqzTlqoWbmKWXSjM-0-63d88532b1844a2a0380d41647485c6c)
图1-31 执行hello.py
提示
这是没有使用文本编辑工具编辑文档,用的是cat命令。如果有条件,尽可能地使用文本编辑器,如vi。几乎所有的Linux版本都默认安装了vi文本编辑器。
Linux下的hello.py执行完毕。比较一下这两个不同系统下的hello.py,可以发现基本上是一致的,只有在涉及中文处理的时候稍有差别(Windows和Linux中的中文处理采用了不同的字符编码。Windows使用的是GBK, Linux一般默认使用utf8)。几乎所有的Python程序都可以在不同系统中通用,这也是Python最大的优势之一。