2016-09-07 100 views
2

我有90页的URL在数组如何在PHP上并行执行scrapy?

[url1,url2,url3, ... , url90] 

我想有3蜘蛛谁在同一时间工作,并通过1个网址到每一个,所以,我的Scrapy一审得到URL1,第二一个得到url2,第三个得到url3,当第一个完成他的工作时,他将得到url4。

我用GNU Parallel但如果有另一个软件更好,我会使用它。

我想这一个在PHP,因为我应该从PHP

启动我scrapy
exec (for url in urlsTab | parallel -j 3 scrapy crawl mySpider -a url {}) 

回答

1

你可能想是这样的(未经测试):

$parallel = popen("parallel -j 3 scrapy crawl mySpider","w"); 
foreach($urlsTab as $url) { 
    fwrite($parallel,$url+"\n"); 
} 
close $parallel;