用shell同時執行多個scrapy命令
阿新 • • 發佈:2019-02-07
專案中單機使用shell指令碼進行多個scrapy命令的執行,即同個shell進行多個scrapy命令的執行,這樣會大大提高爬取效率,好好利用CPU使用率
在shell命令列一次執行多個scrapy命令,可以有三種方式:
(一)每個命令之間用 ; 隔開
各命令的執行結果,不會影響其他命令的執行。也就是命令執行起來,不一定都能保證成功。 或的意思
scrapy crawl a;scrapy crawl b
(二)每個命令之間用 && 隔開
前面的命令執行成功後,才會執行後面的命令。這樣就可以保證所有的命令執行成功了 。 與的意思
scrapy crawl a && scrapy crawl b
(三) 每個命令之間用 || 或者是 |隔開
|| 也是或的意思,但是這裡是只有前面的命令執行失敗後,我才會進行下一條的命令執行,直到執行成功為止。
shell的管道就是這個原理,比如我們打log,將錯誤日誌輸出到某個log上用的就是這個原理
cd /home/admin/123 || echo “error123”
總結:
雖然上面三種情況列出來了,但是我們這裡使用第一種方式:
scrapy crawl a;scrapy crawl b