Day 22 22.2:scrapy部署
生活随笔
收集整理的這篇文章主要介紹了
Day 22 22.2:scrapy部署
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
scrapy項目部署
scrapyd部署工具介紹
- scrapyd是一個用于部署和運行scrapy爬蟲的程序,它由 scrapy 官方提供的。它允許你通過JSON API來部署爬蟲項目和控制爬蟲運行。
所謂json api本質就是post請求的webapi
- 選擇一臺主機當做服務器,安裝并啟動 scrapyd 服務。再這之后,scrapyd 會以守護進程的方式存在系統中,監聽爬蟲地運行與請求,然后啟動進程來執行爬蟲程序。
環境安裝
- scrapyd服務:
? pip install scrapyd
- scrapyd客戶端:
? pip install scrapyd-client
? 一定要安裝較新的版本10以上的版本,如果是現在安裝的一般都是新版本
啟動scrapyd服務
- 打開終端在scrapy項目路徑下 啟動scrapyd的命令:
scrapyd
- scrapyd 也提供了 web 的接口。方便我們查看和管理爬蟲程序。默認情況下 scrapyd 監聽 6800 端口,運行 scrapyd 后。在本機上使用瀏覽器訪問
http://localhost:6800/地址即可查看到當前可以運行的項目。
- 點擊job可以查看任務監控界面
scrapy項目部署
配置需要部署的項目
- 編輯需要部署的項目的scrapy.cfg文件(需要將哪一個爬蟲部署到scrapyd中,就配置該項目的該文件)
[deploy:部署名(部署名可以自行定義)]
url = http://localhost:6800/
project = 項目名(創建爬蟲項目時使用的名稱)
username = dream # 如果不需要用戶名可以不寫
password = 123456 # 如果不需要密碼可以不寫
部署項目到scrapyd
同樣在scrapy項目路徑下執行如下指令:
#pycharm
scrapyd-deploy 部署名(配置文件中設置的名稱) -p 項目名稱
部署成功之后就可以看到部署的項目
使用以下命令檢查部署爬蟲結果:
#pycharm
scrapyd-deploy -L 部署名
管理scrapy項目
指令管理
安裝curl命令行工具
- window需要安裝
- linux和mac無需單獨安裝
window安裝步驟:
- 下載后,放置到一個無中文的文件夾下直接解壓縮,解壓后將bin文件夾配置環境變量!
- 參考網頁:https://www.cnblogs.com/lisa2016/p/12193494.html
啟動項目:
curl http://localhost:6800/schedule.json -d project=項目名 -d spider=爬蟲名
返回結果:注意期中的jobid,在關閉項目時候會用到
{"status": "ok", "jobid": "94bd8ce041fd11e6af1a000c2969bafd", "node_name": "james-virtual-machine"}
關閉項目:
curl http://localhost:6800/cancel.json -d project=項目名 -d job=項目的jobid
刪除爬蟲項目:
curl http://localhost:6800/delproject.json -d project=爬蟲項目名稱
requests模塊控制scrapy項目
import requests
# 啟動爬蟲
url = 'http://localhost:6800/schedule.json'
data = {
'project': 項目名,
'spider': 爬蟲名,
}
resp = requests.post(url, data=data)
# 停止爬蟲
url = 'http://localhost:6800/cancel.json'
data = {
'project': 項目名,
'job': 啟動爬蟲時返回的jobid,
}
resp = requests.post(url, data=data)
總結
以上是生活随笔為你收集整理的Day 22 22.2:scrapy部署的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第十九次ScrumMeeting会议
- 下一篇: RabbitMQ管理界面使用之手动送数据