Python 3反爬虫原理与绕过实战
上QQ阅读APP看书,第一时间看更新

1.1 操作系统的选择

常见的操作系统有Windows、Linux和macOS。大部分生产环境所用的操作系统是Linux,这使得它具有天然的开发优势。本书也将使用Linux操作系统作为学习环境。书中大部分软件安装、环境配置和案例将以Linux为基础,少部分案例会在Windows上演示。

Linux系统的分支很多,且版本各不相同,本书写作与案例演示基于Ubuntu 18.04 LTS(用户量最庞大的Linux分支)。由于不同的分支或版本在设置和操作方面会有差异,为了确保学习体验,建议使用与本书相同的操作系统。考虑到部分读者对Linux的安装和使用并不熟悉,所以本节将演示如何在Windows系统中通过虚拟机软件安装Linux系统。对Linux系统操作熟练的读者或者已有Linux系统的读者可以跳过本节。

1.1.1 Ubuntu 简介

Ubuntu是一个以桌面应用为主的开源操作系统,是用户量最庞大的Linux分支。Ubuntu的第一个正式版本于2004年10月推出,版本号为4.10。正式版的推出引起了全球开发者的广泛关注,成千上万的自由软件爱好者加入了Ubuntu社区。发展至今,Ubuntu已经有了很多版本和衍生品,例如服务器专版、长期支持版和OpenStack云版本等。Ubuntu每6个月发布一个版本,每两年发布的第4个版本将获得对大规模部署的长期支持,即长期支持版(也称LTS)。

相关链接

❑ Ubuntu 官方网址:https://ubuntu.com/

❑ Ubuntu 下载地址:https://ubuntu.com/download/desktop

首先,我们需要下载Ubuntu系统安装镜像。打开Ubuntu官网后,点击导航栏的Download菜单,提供了不同用途的Ubuntu版本,如图1-1所示。

图1-1 Ubuntu可选版本

本书写作与案例演示基于Ubuntu 18.04 LTS,即Ubuntu Desktop选项下的18.04 LTS版。点击对应按钮即可下载系统镜像。当然,也可以直接打开Ubuntu下载地址,在下载列表中选择Ubuntu 18.04.2 LTS版。

1.1.2 VirtualBox 的安装

VirtualBox是一款性能优异、简单易用的虚拟机软件。它支持的虚拟操作系统包括Windows、Linux和macOS。如果你现在使用的操作系统并不是Ubuntu,但又希望能够按照书中指引学习,那么安装虚拟机软件是很好的选择。

相关链接

❑ VirtualBox 官方网址:https://www.virtualbox.org

❑ VirtualBox 下载地址:https://www.virtualbox.org/wiki/Downloads

打开VirtualBox下载地址,页面如图1-2所示,用户可以根据所用的操作系统选择对应的安装文件(如Windows hosts)。

图1-2 VirtualBox下载页

下载完成后,双击打开VirtualBox安装文件,安装界面如图1-3所示。

图1-3 VirtualBox安装界面

接着按照VirtualBox安装向导的指引进行安装即可。

1.1.3 安装 Ubuntu

VirtualBox软件界面如图1-4所示,左侧是虚拟机列表,右侧是快捷操作栏。

图1-4 VirtualBox软件界面

点击右侧的“新建”按钮,在弹出的设置窗口中填入虚拟机名称“ubuntu”(也可以填写其他名称),然后根据自己的情况选择空间充裕的磁盘,如图1-5所示,接着点击“下一步”按钮即可。

图1-5 设置窗口

接着,根据自己计算机的实际情况分配虚拟机内存,在通常情况下不少于2048 MB。如果本机内存充裕,建议分配8192 MB以上,这里的内存配置如图1-6所示。

图1-6 内存配置

接下来,到了虚拟硬盘分配环节。新建的虚拟机一般选择“现在创建虚拟硬盘”,在“选择虚拟硬盘文件类型”选项卡中选择默认的硬盘文件类型,即“VDI(VirtualBox磁盘映像)”选项,并在“存储在物理硬盘上”选项卡中选择“动态分配”选项。在分配大小时,建议分配60 GB左右的硬盘空间,如果磁盘空间并不充裕,那么可以设置30 GB,如图1-7所示。

图1-7 磁盘空间配置

此时配置还没有全部完成,在配置向导结束后,点击软件界面右侧的“设置”按钮,并在弹出的设置面板中选择左侧的“系统”选项,然后在“处理器”选项卡中分配至少2个处理器,如果本机处理器数量较多,也可以分配4个处理器,如图1-8所示。

图1-8 处理器配置界面

接着选择左侧菜单栏中的“存储”选项,并在右侧“分配光驱”处点击光驱图标,选择“选择一个虚拟光盘文件”,然后在弹出的文件选择框中选择刚才下载的Ubuntu系统镜像文件,即ubuntu-18.04.2-desktop-amd64.iso,如图1-9所示。

图1-9 分配光驱界面

配置完毕后,选择右侧的“启动”选项,此时虚拟机软件会打开一个新的窗口并加载Ubuntu系统镜像。等待几秒后,虚拟机窗口就会出现如图1-10所示的Ubuntu系统安装引导界面。

图1-10 Ubuntu系统安装引导界面

在界面左侧可以选择操作系统的默认语言,例如“中文(简体)”,右侧可选择试用或安装Ubuntu系统。我们需要安装Ubuntu系统,所以这里选择“安装Ubuntu”选项。安装过程中如果不清楚如何选择选项,就使用默认选项,然后根据安装指引的提示选择所在地区并填写其他用户信息即可。接下来就进入真正的系统安装阶段,待安装完成后(耗时约30分钟)重启Ubuntu系统,打开的Ubuntu系统界面如图1-11所示。

图1-11 Ubuntu系统界面

需要注意的是,分配给虚拟操作系统的资源对系统性能有着直接的影响,推荐的资源分配如下。

❑ 内存大小为8 GB(8192 MB)。

❑ 虚拟硬盘大小为60 GB。

❑ 处理器数量为4。

1.1.4 全屏设置

系统安装完毕后,我们发现VirtualBox的窗口无法放大,它的默认大小是800像素×600像素像素是计算机屏幕常用的单位,英文简称PX(Picture Element),它是构成影像的最小单位。像素是一个相对的单位,当图片尺寸以像素为单位时,我们需要指定其固定的分辨率,才能将图片尺寸与物理上的实际尺寸相转换,因此经常会省略PX和像素,如本句表达为“它的默认像素大小是800×600”或“它的默认大小是800×600”。,这显然会影响到我们的体验和操作。想要全屏使用虚拟机软件,需要做一些额外的设置。在虚拟机软件的顶部菜单栏中找到“设备”选项,并在子菜单中选择“安装增强功能”,如图1-12所示。

图1-12 虚拟机软件界面

此时系统会弹出如图1-13所示的软件安装确认提示框,点击“运行”按钮即可。

图1-13 软件安装确认提示框

然后系统就会自动安装用于全屏显示的辅助软件。软件安装时,Ubuntu系统终端显示如图1-14所示的安装信息。

图1-14 安装信息

安装完成后,点击VirtualBox右上角的“最大化”按钮,就可以全屏使用Ubuntu系统了。

1.1.5 Python 设置

Ubuntu 18.04自带Python 3.6,因此我们无须再次安装。但在使用时不能直接输入python,而是要输入python3。当输入python时,会得到如下提示:

Command python' not found, but can be installed with:
sudo apt install python3
sudo apt install python
sudo apt install python-minimal
You also have python3 installed, you can run 'python3' instead.

这是因为Python 3.6并不是Ubuntu系统预设的默认值,如果想要将Python 3.6与命令python绑定,就需要调高Python 3.6的优先级。虽然输入python3并不会影响日常使用,但为了统一命令,我们需要将Python 3的优先级调高,这样就可以在终端使用python命令了。在Ubuntu系统中设置优先级的命令格式为:

update-alternatives: --install <链接><名称><路径><优先级>

对应的设置命令如下:

$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2

命令执行后,当我们再次输入python时,就会进入熟悉的Python命令交互界面,此时终端显示的内容如下:

Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

这代表我们成功地将Python 3.6与python命令绑定到一起了。

在Python中安装第三方库时,需要使用包管理工具pip,Ubuntu系统并没有为我们准备这个包管理工具,我们需要自己安装。安装命令如下:

$ sudo apt-get install python3-pip

待安装完毕后,通过如下命令检查是否成功安装:

$ pip --version

命令执行后,终端输出如下内容:

pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)

这代表我们已经成功地在Ubuntu系统中安装了Python的包管理工具pip。要注意的是,pip并不需要像Python 3.6那样与命令进行绑定,可以直接使用。