W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
Scrapy不提供任何以分布式(多服務器)方式運行爬蟲的內置工具。但是,有一些分發(fā)爬行的方法,這取決于您計劃如何分發(fā)爬行。
如果您有許多蜘蛛,那么分配負載的最明顯的方法就是設置許多ScrapyD實例,并將蜘蛛運行分布在這些實例中。
如果您想在多臺機器上運行一個(大)蜘蛛,通常需要對URL進行分區(qū),以便爬行并將它們發(fā)送到每個單獨的蜘蛛。下面是一個具體的例子:
首先,準備要爬網(wǎng)的URL列表并將其放入單獨的文件/URL::
http://somedomain.com/urls-to-crawl/spider1/part1.list
http://somedomain.com/urls-to-crawl/spider1/part2.list
http://somedomain.com/urls-to-crawl/spider1/part3.list
然后在3個不同的ScrapyD服務器上啟動一個蜘蛛運行。蜘蛛會收到一個(蜘蛛)論點 part 使用要爬網(wǎng)的分區(qū)的編號::
curl http://scrapy1.mycompany.com:6800/schedule.json -d project=myproject -d spider=spider1 -d part=1
curl http://scrapy2.mycompany.com:6800/schedule.json -d project=myproject -d spider=spider1 -d part=2
curl http://scrapy3.mycompany.com:6800/schedule.json -d project=myproject -d spider=spider1 -d part=3
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: