溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Scrapyd部署爬蟲

發(fā)布時(shí)間:2020-07-19 07:58:03 來源:網(wǎng)絡(luò) 閱讀:425 作者:wantingyun 欄目:網(wǎng)絡(luò)安全

準(zhǔn)備工作

  • 安裝scrapyd: pip install scrapyd

  • 安裝scrapyd-client : pip install scrapyd-client

  • 安裝curl:[安裝地址](http://ono60m7tl.bkt.clouddn.com/curl.exe),安裝完成以后將所在目錄配置到環(huán)境變量中

開始部署

  1. 修改scrapy項(xiàng)目目錄下的scrapy.cfg文件,修改如下

[deploy:JD_Spider]    #加上target   :nameurl = http://localhost:6800/   #將前面的#刪除project = JD               #project的名字,可以使用默認(rèn)的,當(dāng)然也可以改變
  1. 在任意目錄下的打開終端,輸入scrapyd,觀察是否運(yùn)行成功,運(yùn)行成功的話,就可以打開http://localhost:6800看是否正常顯示,如果正常顯示則看到下面的這張圖,這里的JD是部署之后才能看到的,現(xiàn)在是看不到的,所以沒出現(xiàn)也不要擔(dān)心:

Scrapyd部署爬蟲

  1. 在項(xiàng)目的根目錄下運(yùn)行如下的命令:python E:\python2.7\Scripts\scrapyd-deploy target -p project,這里的E:\python2.7\Scripts\是你的python安裝目錄,Scripts是安裝目錄下的一個文件夾,注意前面一定要加上python,target是在前面scrapy.cfg中設(shè)置的deploy:JD_Spider,JD_Spider就是target,project 是JD,因此這個完整的命令是python E:\python2.7\Scripts\scrapyd-deploy JD_Spider -p JD,現(xiàn)在項(xiàng)目就部署到上面了,這下網(wǎng)頁上就有JD了,詳情請見上圖

  1. 驗(yàn)證是否成功,你可以在網(wǎng)頁上看有沒有顯示你的工程名字,另外在根目錄下輸入python E:\python2.7\Scripts\scrapyd-deploy -l就能列出你所有部署過的項(xiàng)目了

  1. 啟動爬蟲:curl http://localhost:6800/schedule.json -d project=myproject -d spider=spider_name,這里的project填入的是項(xiàng)目名,spider_name填入的是你的爬蟲中定義的name,運(yùn)行我的實(shí)例完整的代碼為:curl http://localhost:6800/schedule.json -d project=JD -d spider=spider,這里將會顯示如下信息:

#這里的jobid比較重要,下面會用到這個取消爬蟲{"status": "ok", "jobid": "3013f9d1283611e79a63acb57dec5d04", "node_name": "DESKTOP-L78TJQ7"}
  1. 取消爬蟲:curl http://localhost:6800/cancel.json -d project=myproject -d job=jobid,jobid就是上面的提到過的,如果取消我的這個實(shí)例代碼如:curl http://localhost:6800/cancel.json -d project=JD -d job=3013f9d1283611e79a63acb57dec5d04,那么它的狀態(tài)就會變成如下:

{"status": "ok", "prevstate": "running", "node_name": "DESKTOP-L78TJQ7"}
  1. 列出項(xiàng)目:curl http://localhost:6800/listprojects.json,下面將會出現(xiàn)你已經(jīng)部署的項(xiàng)目

  1. 刪除項(xiàng)目:curl http://localhost:6800/delproject.json -d project=myproject

  1. 列出版本:curl http://localhost:6800/listversions.json?project=myproject,這里的project是項(xiàng)目的名字,是在scrapy.cfg設(shè)置的

  1. 列出爬蟲:curl http://localhost:6800/listspiders.json?project=myproject這里的project是項(xiàng)目的名字,是在scrapy.cfg設(shè)置的

  1. 列出job:curl http://localhost:6800/listjobs.json?project=myproject這里的project是項(xiàng)目的名字,是在scrapy.cfg設(shè)置的

  1. 刪除版本:curl http://localhost:6800/delversion.json -d project=myproject -d version=r99,這里的version是自己的項(xiàng)目版本號,在刪除之前需要查看版本號


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI