[CentOS Python系列] 一.阿里雲伺服器安裝部署及第一個Python爬蟲程式碼實現
從2014年開始,作者主要寫了三個Python系列文章,分別是基礎知識、網路爬蟲和資料分析。
- Python基礎知識系列:Pythonj基礎知識學習與提升
- Python網路爬蟲系列:Python爬蟲之Selenium+Phantomjs+CasperJS
- Python資料分析系列:知識圖譜、web資料探勘及NLP
它們都是基於Windows系統下的Python程式設計,每個系列都從安裝過程、基礎知識到實際應用三個方面進行講解,但在寫這些文章的時候,始終有兩個缺陷:一是沒有介紹Linux系統下的Python程式設計,並且所有程式碼使用的都是Python 2.7版本;另一方面是如何結合伺服器,真實的專案中,通常會將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位)


2.點選購買,進入選擇配置頁面進行購買


4.在選單頁面點選設定密碼,登入名root、登入密碼需設置

5.點選“去下單”按鈕並支付

6.去到阿里雲控制檯,並點選雲伺服器ECS

然後在左邊欄目點選“雲伺服器ECS”圖示,生成如下圖所示介面,可以看到我們的伺服器已經運轉。

7.在控制檯中實現雲伺服器遠端登入
點選“遠端登入”後彈出的介面會提示遠端連線密碼,請記住這個密碼,它將一直用於遠端登入伺服器。

接下來就是輸入遠端連線密碼實現登入。

8.在彈出的黑框中,輸入登入名root,密碼為第4步驟設定的自定義密碼

注意:講到這裡一個簡單的阿里雲伺服器就搭建成了,其他雲伺服器都是類似的配置方法,比較簡單,這裡作者使用的是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

2.檢視檔案內容
命令:dir或ls
$ls 列出當前資料夾下所有內容
$ls -o 列出當前資料夾中所有內容,含詳細資訊,但不列出group
$ls -l 同上,含group資訊
$ls -a 列出當前資料夾中所有內容,包含以”.”開頭的檔案
$ls -t 按更改時間排序
$ls -v 按版本先後排序
如下圖所示,可以看到我已經建立的三個Python檔案,“ls -o”顯示詳細資訊。
3.新建資料夾
命令:mkdir 資料夾
建立資料夾eastmount,執行”mkdir eastmount”後顯示新建資料夾。

4.檢視路徑
命令:cd 進入資料夾
Change Directory ,”cd yxz”表示進入yxz資料夾,”cd ~”表示返回home根目錄,”cd ..”表示返回上一層目錄(類似DOS)。
更改目錄 Change Directory (cd):cd /path/to/directory/,有DOS基礎的同學應該知道,路徑可以用相對也可以用絕對。

5.建立Python檔案
命令:touch first.py
在eastmount目錄建立first.py檔案,如果touch了已有的檔案,則會更新那個檔案的日期為當前。

6.檢視Python版本
命令:python -V
可以看到是Python3.4.1,需要注意print()為輸出,同時呼叫一些擴充套件包方法也有別於Python2.7版本。

7.編輯Python程式
命令: vi first.py
注意:
(1) 輸入”vi first.py”後,用vi開啟檔案後,是處於「命令列模式(command mode)」,您要切換到「插入模式(Insert mode)」才能夠輸入文字。切換方法:在「命令列模式(command mode)」下按一下字母「i」就可以進入「插入模式(Insert mode)」,這時候你就可以開始輸入文字了。
(2) 編輯好後,需從插入模式切換為命令列模式才能對檔案進行儲存,切換方法:按「ESC」鍵。
(3) 儲存並退出檔案:在命令模式下輸入:wq即可!(別忘了wq前面的:)

執行步驟:
輸出指令:vi first.py
點選鍵盤:i鍵 - 編輯程式碼(Insert)
輸出程式碼:
#!/usr/bin/python
print("this is my first python code.")
print("hello,Eastmount!!!")
print("Bye, Nana.")
點選鍵盤:Esc鍵
輸出命令::wq

注意,我們也可以使用“vim first.py”編輯程式碼,並且它是彩色顯示,如下圖所示:

8.執行Python程式
命令:python first.py
輸出結果如下所示:
this is my first python code.
Hello, Eastmount!!!
Bye, Nana.

注意:使用Linux系統時,如果一個螢幕顯示不下內容,想切換上一頁下一頁,可以使用“Shift+PageUp”快捷鍵檢視上一頁內容,“Shift+PageDown”檢視下一頁內容。
三. Python實現BeautifulSoup爬蟲程式碼
Python可以呼叫pip工具安裝擴充套件包,這是非常方便的一個手段,這裡我們通過該擴充套件包安裝BeautifulSoup和Selenium爬蟲擴充套件包。
安裝Selenium擴充套件包
命令:pip install selenium

安裝BeautifulSoup擴充套件包
命令:pip install bs4

檢視已安裝擴充套件包
命令:pip list

建立第一個爬蟲程式碼bsfirst.py
命令:touch bsfirst.py
編輯程式碼
命令:vim bsfirst.py

輸入程式碼
#!/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())

輸出結果

注意,它輸出了中文亂碼,下一篇文章將講解怎麼解決該問題。
四. Putty基礎用法
PuTTY是一個Telnet、SSH、rlogin、純TCP以及序列介面連線軟體。PuTTY為一開放原始碼軟體,主要由Simon Tatham維護,使用MIT licence授權。
隨著Linux在伺服器端應用的普及,Linux系統管理越來越依賴於遠端。在各種遠端登入工具中,Putty是出色的工具之一。它是一個免費的、Windows x86平臺下的Telnet、SSH和rlogin客戶端,但是功能絲毫不遜色於商業的Telnet類工具。
連線遠端伺服器
執行介面如下圖所示:

登入阿里雲伺服器
在Host Name填寫公網IP地址,比如39.xx.xx.166,點選“Open”按鈕,如下圖所示。

登入後的介面如下圖所示,填寫登入名“root”以及對應登入密碼。

然後就可以操作該遠端伺服器了,比如執行我們的bsfirst.py爬蟲程式碼。

可以看到,爬取了百度搜尋官網的標題“百度一下,你就知道”,更多BeautifulSoup知識推薦下面,這裡不再深入。 通過Putty我們可以更好的管理遠端伺服器以及上傳檔案到伺服器上,總之,希望這篇基礎文章對您有所幫助,尤其是剛接觸雲伺服器的新手,如果您是高手,還請多提意見,共同提高。
祝大家新年快樂,又一年過去了,娜我們來年一起進步加油。
(By:Eastmount CSDN 秀璋 2018-02-13 中午1點 http://blog.csdn.net/Eastmount)
相關文章
- python爬蟲初探--第一個python爬蟲專案Python爬蟲
- Python爬蟲入門【1】: CentOS環境安裝Python爬蟲CentOS
- Python 爬蟲系列Python爬蟲
- Python爬蟲入門教程 1-100 CentOS環境安裝Python爬蟲CentOS
- python爬蟲-33個Python爬蟲專案實戰(推薦)Python爬蟲
- python爬蟲系列版Python爬蟲
- Python 第一個爬蟲,爬取 147 小說Python爬蟲
- 阿里雲Centos伺服器安裝Nginx阿里CentOS伺服器Nginx
- springBoot部署阿里雲之一(安裝JDK)Spring Boot阿里JDK
- 雲伺服器一般安裝centos哪個版本伺服器CentOS
- centos雲伺服器安裝Python3記錄CentOS伺服器Python
- 我的第一個Python爬蟲——談心得Python爬蟲
- java實現一個簡單的爬蟲小程式Java爬蟲
- Python爬蟲教程-05-python爬蟲實現百度翻譯Python爬蟲
- python的爬蟲功能如何實現Python爬蟲
- Python爬蟲是如何實現的?Python爬蟲
- python實現selenium網路爬蟲Python爬蟲
- 【Python實戰】用Scrapyd把Scrapy爬蟲一步一步部署到騰訊雲上,有彩蛋Python爬蟲
- Python爬蟲小專案:爬一個圖書網站Python爬蟲網站
- Python 萬能程式碼模版:爬蟲程式碼篇Python爬蟲
- Python3爬蟲利器:Appium的安裝Python爬蟲APP
- python3網路爬蟲開發實戰_Python 3開發網路爬蟲(一)Python爬蟲
- 初探python之做一個簡單小爬蟲Python爬蟲
- 學Python爬蟲哪個機構好一點?Python爬蟲
- 使用python的scrapy來編寫一個爬蟲Python爬蟲
- Python全棧實戰系列之一:網路爬蟲的初次體驗Python全棧爬蟲
- Python開發爬蟲專案+程式碼Python爬蟲
- Python 爬蟲實戰Python爬蟲
- python網路爬蟲_Python爬蟲:30個小時搞定Python網路爬蟲視訊教程Python爬蟲
- Python網路爬蟲實戰(一)快速入門Python爬蟲
- Python網路爬蟲實戰專案大全 32個Python爬蟲專案demoPython爬蟲
- 爬蟲——爬取貴陽房價(Python實現)爬蟲Python
- python爬蟲58同城(多個資訊一次爬取)Python爬蟲
- Python爬蟲 - 記一次字型反爬Python爬蟲
- Python爬蟲實踐--爬取網易雲音樂Python爬蟲
- python併發爬蟲利器tomorrow(一)Python爬蟲
- python網路爬蟲筆記(一)Python爬蟲筆記
- Python3爬蟲入門(一)Python爬蟲
- Python 爬蟲IP代理池的實現Python爬蟲