且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

更新时间:2021-08-03 17:02:16

随着人工智能和深度学习的风暴来临,Python变得越来越火热,作者也准备从零学习这些知识,写相关文章。本篇文章是作者学习部署阿里云服务器 CentOS环境,然后完成了第一个Python BeautifulSoup爬虫,是非常基础的入门文章,后面将陆续深入,学习如何将Python定时爬虫托管到服务器、爬取的数据存储至数据库中、爬虫数据分析等知识。文章非常基础,希望这系列文章对您有所帮助,如果有错误或不足之处,还请海涵。

一. 阿里云服务器CentOS搭建

阿里云的CentOS云系统是一个集成了Python环境基于yum安装的镜像,包含Nginx、MySQL、Pyenv、IPython等。

CentOS(Community Enterprise Operating System,中文意思是:社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。

阿里云提供了很多的产品供大家购买使用,非常方便,这里作者随便购买了一个,不一定适用,自己也是摸着石头过河,一点点尝试吧,为了学习这钱其实还是值的。

1.购买centOS系统
阿里云提供的环境地址:Python运行环境(CentOS6.8 64位)

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

该产品的说明如下所示:

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

2.点击购买,进入选择配置页面进行购买

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

3.购买成功之后,生成如下的订单页面
这里作者选择了云服务器ECS、镜像CentOs6.8,支持Python运行环境、djangoV1.1、nginxV1.1、mysqlV5.7。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

4.在菜单页面点击设置密码,登录名root、登录密码需设置

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

5.点击“去下单”按钮并支付

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

6.去到阿里云控制台,并点击云服务器ECS

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

然后在左边栏目点击“云服务器ECS”图标,生成如下图所示界面,可以看到我们的服务器已经运转。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

7.在控制台中实现云服务器远程登录

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

点击“远程登录”后弹出的界面会提示远程连接密码,请记住这个密码,它将一直用于远程登录服务器。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

接下来就是输入远程连接密码实现登录。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

8.在弹出的黑框中,输入登录名root,密码为第4步骤设置的自定义密码

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

注意:讲到这里一个简单的阿里云服务器就搭建成了,其他云服务器都是类似的配置方法,比较简单,这里作者使用的是CentOS系统,接下来将带领大家体验Linux的基础命令及写第一个Python代码。


二. CentOS基础命令及Python入门

作者首先给出Linux系统下常见的命令,详见:Putty基础教程之(一).入门命令学习及编写HTML

cd 文件夹名:查看路径
dir:查看当前路径下的所有文件
ls:列出当前文件夹下所有内容
pwd:显示当前路径
clear: 清空终端屏幕命令,Ctrl+L清除屏幕
 
mkdir [dir]: 新建文件夹
mv *** ****:移动或者重命名
rm *** ***:删除一次可以删除多个
cp:拷贝
 
touch 文件名: 新建文件
vi 文件名: 编辑文件命令
cat 文件名: 查看文件内容
 
wget (路径):下载
unzip ***.zip:压缩文件到当前目录
ls -ltr  |  cat  -vte: 显示文件夹下所有内容详细信息

1.清屏 命令:clear

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

2.查看文件内容

  • 命令:dir或ls
$ls 列出当前文件夹下所有内容
$ls -o 列出当前文件夹中所有内容,含详细信息,但不列出group
$ls -l 同上,含group信息
$ls -a 列出当前文件夹中所有内容,包含以”.”开头的文件
$ls -t 按更改时间排序
$ls -v 按版本先后排序

如下图所示,可以看到我已经创建的三个Python文件,“ls -o”显示详细信息。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

3.新建文件夹

  • 命令:mkdir 文件夹
  • 创建文件夹eastmount,执行”mkdir eastmount”后显示新建文件夹。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

4.查看路径

  • 命令:cd 进入文件夹
  • Change Directory ,”cd yxz”表示进入yxz文件夹,”cd ~”表示返回home根目录,”cd ..”表示返回上一层目录(类似DOS)。
  • 更改目录 Change Directory (cd):cd /path/to/directory/,有DOS基础的同学应该知道,路径可以用相对也可以用绝对。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

5.创建Python文件

  • 命令:touch first.py
  • 在eastmount目录创建first.py文件,如果touch了已有的文件,则会更新那个文件的日期为当前。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

6.查看Python版本

  • 命令:python -V
  • 可以看到是Python3.4.1,需要注意print()为输出,同时调用一些扩展包方法也有别于Python2.7版本。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

7.编辑Python程序

  • 命令: vi first.py

注意:
(1) 输入”vi first.py”后,用vi打开文件后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。切换方法:在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
(2) 编辑好后,需从插入模式切换为命令行模式才能对文件进行保存,切换方法:按「ESC」键。
(3) 保存并退出文件:在命令模式下输入:wq即可!(别忘了wq前面的:)

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

执行步骤:

输出指令:vi first.py
点击键盘:i键 - 编辑代码(Insert)
 
输出代码:
#!/usr/bin/python
print("this is my first python code.")
print("hello,Eastmount!!!")
print("Bye, Nana.")
 
点击键盘:Esc键
输出命令::wq

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

注意,我们也可以使用“vim first.py”编辑代码,并且它是彩色显示,如下图所示:

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

8.运行Python程序

  • 命令:python first.py

输出结果如下所示:

this is my first python code.
Hello, Eastmount!!!
Bye, Nana.

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

注意:使用Linux系统时,如果一个屏幕显示不下内容,想切换上一页下一页,可以使用“Shift+PageUp”快捷键查看上一页内容,“Shift+PageDown”查看下一页内容。


三. Python实现BeautifulSoup爬虫代码

Python可以调用pip工具安装扩展包,这是非常方便的一个手段,这里我们通过该扩展包安装BeautifulSoup和Selenium爬虫扩展包。

安装Selenium扩展包

  • 命令:pip install selenium

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

安装BeautifulSoup扩展包

  • 命令:pip install bs4

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

查看已安装扩展包

  • 命令:pip list

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

创建第一个爬虫代码bsfirst.py

  • 命令:touch bsfirst.py

编辑代码

  • 命令:vim bsfirst.py

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

输入代码

#!/usr/bin/python
import sys
import urllib
import urllib.request
from bs4 import BeautifulSoup
 
print(sys.getdefaultencoding())
url = "http://www.baidu.com"
print(url)
content = urllib.request.urlopen(url).read()
#print(content)
 
soup = BeautifulSoup(content,"html.parser")
print(soup.title)
print(soup.title.get_text())

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

输出结果

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

注意,它输出了中文乱码,下一篇文章将讲解怎么解决该问题。


四. Putty基础用法

PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。PuTTY为一开放源代码软件,主要由Simon Tatham维护,使用MIT licence授权。

随着Linux在服务器端应用的普及,Linux系统管理越来越依赖于远程。在各种远程登录工具中,Putty是出色的工具之一。它是一个免费的、Windows x86平台下的Telnet、SSH和rlogin客户端,但是功能丝毫不逊色于商业的Telnet类工具。

连接远程服务器
运行界面如下图所示:

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

登录阿里云服务器
在Host Name填写公网IP地址,比如39.xx.xx.166,点击“Open”按钮,如下图所示。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

登录后的界面如下图所示,填写登录名“root”以及对应登录密码。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

然后就可以操作该远程服务器了,比如运行我们的bsfirst.py爬虫代码。

[CentOS Python系列] 一.阿里云服务器安装部署及第一个Python爬虫代码实现

可以看到,爬取了百度搜索官网的标题“百度一下,你就知道”,更多BeautifulSoup知识推荐下面,这里不再深入。 通过Putty我们可以更好的管理远程服务器以及上传文件到服务器上,总之,希望这篇基础文章对您有所帮助,尤其是刚接触云服务器的新手,如果您是高手,还请多提意见,共同提高。

很高兴重回阿里云,开心能与大家在这里认识,希望能分享更高质量的文章帮助大家,且行且珍惜。

(By:Eastmount 2021-11-08 夜于武汉)