1. 程式人生 > >scrapy 多爬蟲順序執行

scrapy 多爬蟲順序執行

 

scrapy可以在spiders目錄下建立多個爬蟲檔案,常用的啟動方式:

 

方法一


 

在包含 scrapy.cfg 的目錄下, 啟動命令為:

scrapy  crawl yourspidername

  

方法二


 

呼叫cmdline模組來啟動scrapy

在與settings.py檔案同級的目錄下新建執行檔案, 如 run.py  。 以下有兩種寫法:

from  scrapy  import cmdline

cmdline.execute('scrapy crawl yourspidername'.split())

 

from scrapy.cmdline import execute
 
execute(['scrapy','crawl','yourspidername'])

 

 

以上只能同時執行一個爬蟲,

下面是可以順序執行多個scrapy爬蟲的方法。

 

方法三

 


 

引入系統os模組,該方法爬蟲會順序執行一遍後結束退出。

import os
os.system("scrapy crawl yourspidername_1") 
os.system("scrapy crawl yourspidername_2")
os.system("scrapy crawl yourspidername_3")

啟動方式:

python  run.py  直接執行該python檔案,下同

 

也可以讓爬蟲不間斷的順序迴圈執行,設定每個爬蟲的執行時間,CLOSESPIDER_TIME=3600 表示3600秒之後強制停止該爬蟲。 時間隨需要自己定義。

import os

while True:
    os.system("scrapy crawl yourspidername_1 -s CLOSESPIDER_TIMEOUT=3600") 
    os.system("scrapy crawl yourspidername_2 -s CLOSESPIDER_TIMEOUT=7200")  
    os.system("scrapy crawl yourspidername_3 -s CLOSESPIDER_TIMEOUT=3600")