1. 程式人生 > >基於Python的-scrapyd部署爬蟲流程

基於Python的-scrapyd部署爬蟲流程

1. 開啟命令視窗,新建一個虛擬環境:

Mkvirtualenv --python=D:\python36\python.exe 虛擬環境名

2. 安裝scrapy專案中所需要的包:

例如pip install scrapy

如果缺少win32 要進行pip install pywin32安裝

3.  安裝scrapyd服務:

pip install scrapyd

4. 輸入scrapyd,啟動服務, 在瀏覽器中輸入127.0.0.1:6800測試是否連線成功

5. 如果連線成功,Ctrl+c退出服務.在非C盤目錄下新建一個資料夾,自定義名稱.進入該資料夾,shift+右鍵-->在此處開啟命令視窗,先輸入”workon 虛擬環境名

進入虛擬環境中,再輸入scrapyd執行,此終端不能關閉.執行完成後會新建一個dbs空資料夾,用來存放爬蟲專案的資料檔案.

6. 進入虛擬環境,pip install scrapyd-client==1.1.0安裝scrapyd-client模組,是專門打包scrapy爬蟲專案到scrapyd服務中的,執行命令安裝完成後,在虛擬環境的scripts中會出現scrapyd-deploy無後綴檔案,這個scrapyd-deploy無後綴檔案是啟動檔案,在Linux系統下可以執行,在windows下是不能執行....所以新建一個scrapyd-deploy.bat檔案,右鍵選擇編輯,輸入以下配置,(注意:兩個路徑之間是空格,

不能換行,一定要使用雙引號。單引號的話會錯誤)

@echo off

"C:\Users\qianzhen\Envs\scrapySpider\Scripts\python.exe" "C:\Users\qianzhen\Envs\scrapySpider\Scripts\scrapyd-deploy" %1 %2 %3 %4 %5 %6 %7 %8 %9

7. 進入要執行的專案中,shift+右鍵開啟命令視窗,使用workon進入虛擬環境,輸入”scrapyd-deploy”進行測試,如果出現 Unknown target:default 則說明正確

8. 開啟專案,進入scrapy.cfg檔案,url這行程式碼解掉註釋,並且給設定你的部署名稱

9. 再次執行scrapyd-deploy -l 啟動服務,可以看到設定的名稱

10. 開始打包前,執行一個命令:scrapy list,這個命令執行成功說明可以打包了,如果沒執行成功說明還有工作沒完成

11. 進行打包,還是在專案目錄下的虛擬環境中,命令列輸入:

scrapyd-deploy 部署名稱 -p 專案名稱

出現以下情況說明成功

12. 執行爬蟲,在命令列中輸入:

curl http://localhost:6800/schedule.json -d project=專案名稱 -d spider=爬蟲名稱

----------------------------------------------------------------------------------------------------------------------------

停止爬蟲

curl http://localhost:6800/cancel.json -d project=專案名稱 -d job=執行ID

刪除scrapy專案

注意:一般刪除scrapy專案,需要先執行命令停止專案下在遠行的爬蟲

curl http://localhost:6800/delproject.json -d project=scrapy專案名稱

檢視有多少個scrapy專案在api

檢視指定的scrapy專案中有多少個爬蟲

curl http://localhost:6800/listspiders.json?project=scrapy專案名稱