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

简介: 本文将详细讲解阿里云服务器如何安装及部署本地Python环境,并搭建代码。

随着人工智能和深度学习的风暴来临,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位)

image.png

该产品的说明如下所示:

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

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

image.png

注意:讲到这里一个简单的阿里云服务器就搭建成了,其他云服务器都是类似的配置方法,比较简单,这里作者使用的是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

image.png

2.查看文件内容

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

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

image.png

3.新建文件夹

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

image.png

4.查看路径

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

image.png

5.创建Python文件

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

image.png

6.查看Python版本

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

image.png

7.编辑Python程序

  • 命令: vi first.py

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

image.png

执行步骤:

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

image.png

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

image.png

8.运行Python程序

  • 命令:python first.py

输出结果如下所示:

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

image.png

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


三. Python实现BeautifulSoup爬虫代码

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

安装Selenium扩展包

  • 命令:pip install selenium

image.png

安装BeautifulSoup扩展包

  • 命令:pip install bs4

image.png

查看已安装扩展包

  • 命令:pip list

image.png

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

  • 命令:touch bsfirst.py

编辑代码

  • 命令:vim bsfirst.py

image.png

输入代码

#!/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())

image.png

输出结果

image.png

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


四. Putty基础用法

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

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

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

image.png

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

image.png

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

image.png

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

image.png

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

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

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

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
11月前
|
人工智能 JavaScript API
零基础构建MCP服务器:TypeScript/Python双语言实战指南
作为一名深耕技术领域多年的博主摘星,我深刻感受到了MCP(Model Context Protocol)协议在AI生态系统中的革命性意义。MCP作为Anthropic推出的开放标准,正在重新定义AI应用与外部系统的交互方式,它不仅解决了传统API集成的复杂性问题,更为开发者提供了一个统一、安全、高效的连接框架。在过去几个月的实践中,我发现许多开发者对MCP的概念理解透彻,但在实际动手构建MCP服务器时却遇到了各种技术壁垒。从环境配置的细节问题到SDK API的深度理解,从第一个Hello World程序的调试到生产环境的部署优化,每一个环节都可能成为初学者的绊脚石。因此,我决定撰写这篇全面的实
2479 67
零基础构建MCP服务器:TypeScript/Python双语言实战指南
|
数据采集 测试技术 C++
无headers爬虫 vs 带headers爬虫:Python性能对比
无headers爬虫 vs 带headers爬虫:Python性能对比
|
移动开发 JavaScript 前端开发
精通服务器推送事件(SSE)与 Python 和 Go 实现实时数据流 🚀
服务器推送事件(SSE)是HTML5规范的一部分,允许服务器通过HTTP向客户端实时推送更新。相比WebSocket,SSE更轻量、简单,适合单向通信场景,如实时股票更新或聊天消息。它基于HTTP协议,使用`EventSource` API实现客户端监听,支持自动重连和事件追踪。虽然存在单向通信与连接数限制,但其高效性使其成为许多轻量级实时应用的理想选择。文中提供了Python和Go语言的服务器实现示例,以及HTML/JavaScript的客户端代码,帮助开发者快速集成SSE功能,提升用户体验。
|
10月前
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1657 1
|
Python
使用Python实现multipart/form-data文件接收的http服务器
至此,使用Python实现一个可以接收 'multipart/form-data' 文件的HTTP服务器的步骤就讲解完毕了。希望通过我的讲解,你可以更好地理解其中的逻辑,另外,你也可以尝试在实际项目中运用这方面的知识。
642 69
|
人工智能 安全 Shell
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
793 2
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
|
Linux
Centos6配置阿里云yum源报错
在CentOS 6配置阿里云Yum源时,可能出现EPEL仓库访问报错(404 Not Found)。解决方法:编辑`/etc/yum.repos.d/epel.repo`文件,将`enabled`和`gpgcheck`参数设为0 ``` 此设置可解决仓库无法访问的问题。
2419 29
|
11月前
|
安全 Linux 网络安全
Python极速搭建局域网文件共享服务器:一行命令实现HTTPS安全传输
本文介绍如何利用Python的http.server模块,通过一行命令快速搭建支持HTTPS的安全文件下载服务器,无需第三方工具,3分钟部署,保障局域网文件共享的隐私与安全。
2727 0
|
Linux 应用服务中间件 nginx
在CentOS上部署Minikube教程
至此,您已成功在CentOS上部署并使用Minikube。您可以自由探索Kubernetes的世界,熟练配置和管理Kubernetes集群。
1065 20