1. 程式人生 > >【Python實戰】用Scrapyd把Scrapy爬蟲一步一步部署到騰訊雲

【Python實戰】用Scrapyd把Scrapy爬蟲一步一步部署到騰訊雲

將我們的爬蟲部署到騰訊雲伺服器上面。廢話不多說,我們就來實戰操作吧。

這裡選擇什麼雲服務都是可以的,阿里雲,AWS,騰訊雲,其他雲都是沒有問題的。部署方法基本一樣,這裡為了方便,所以筆者選擇了騰訊雲來做講解。

既然我們選擇了騰訊雲,首先去騰訊雲的官網,註冊登入一下。

點選複製https://cloud.tencent.com/

當你看到這篇文章的時候,我不知道騰訊雲的優惠是怎樣的,反正我當時,給我了7天的雲伺服器體驗。我就準備拿這個試試手。騰訊雲介面長這個樣子:

登入之後,買完伺服器之後,在雲伺服器介面,就會看到你的伺服器例項了:

介面上面有你伺服器的ip地址,我們遠端登入,就需要知道伺服器的公網ip地址:

本地我用Mac的terminal的ssh登入,輸入指令就是:

點選複製$ ssh [email protected]

然後輸入密碼,登入成功,就會顯示如下介面:

臥槽,可以看到,有3萬多次的嘗試登入,看來伺服器的許可權如果設定的不夠安全的話,是很容易被別人攻破的。

OK,伺服器的東西我們就先暫時放到一邊。輸入

點選複製$ exit

退出登入。我們先來說說爬蟲的事兒。

這裡,我們待部署的爬蟲,是用Scrapy寫的。我們要用到的工具,有Scrapyd和Scrapyd-client。這兩個是專門用來部署Scrapy爬蟲的東西。OK,既然要部署爬蟲,我們就來先看一下我們的爬蟲長什麼樣子。

這裡我們部署的爬蟲只是我日後專案的一個簡單的版本,你可以看和這兩個文章裡面的爬蟲,裡面還有詳細的編寫爬蟲的指導教程。所以,今天我們部署的爬蟲,是最早的一篇用requests寫的爬蟲的Scrapy版本。之所以好部署這個,是為了日後在我的公眾號『皮克啪的鏟屎官』裡面,加入『Daily1024』自動回覆的功能而做準備。以後也會推出這樣的文章,敬請期待。好了,現在就簡單介紹一下這個待部署的爬蟲長什麼樣子。

工程目錄還是很簡單的,和標準的Scrapy建立目錄一樣:

至於工程怎麼寫,請參考文章。
我們這期的爬蟲專案叫DailyWeb,裡面的蟲子叫Caoliu。爬蟲『Caoliu』的主要功能,就是從不同的主題區裡面,讀取當天釋出的帖子,然後將這些帖子的url,title,釋出時間和id都儲存下來,存入資料庫中。

爬蟲就是這樣,我們部署的任務,目前有兩個部分,遠端的伺服器和我們本地的電腦。我們要把本地電腦的爬蟲部署到遠端的伺服器上,上文中我們提到了兩個東西Scrayd和Scrapyd-client這兩個東西,分別安裝的位置就是遠端伺服器安Scrapyd,本地需要上傳的機器安裝Scrapy-client。那麼,我們本地機器安裝scrapy-client。

點選複製$ pip isntall scrapy-client

安裝完成之後,我們需要進入到你Scrapy工程目錄下,執行

點選複製$ scrapyd-deploy -l

就會生成一個scrapy.cfg檔案。這個檔案就是專案的配置檔案,裡面大概長這個樣子:

詳細程式碼如下