W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
Scrapy不提供任何以分布式(多服務(wù)器)方式運(yùn)行爬蟲的內(nèi)置工具。但是,有一些分發(fā)爬行的方法,這取決于您計(jì)劃如何分發(fā)爬行。
如果您有許多蜘蛛,那么分配負(fù)載的最明顯的方法就是設(shè)置許多ScrapyD實(shí)例,并將蜘蛛運(yùn)行分布在這些實(shí)例中。
如果您想在多臺機(jī)器上運(yùn)行一個(大)蜘蛛,通常需要對URL進(jìn)行分區(qū),以便爬行并將它們發(fā)送到每個單獨(dú)的蜘蛛。下面是一個具體的例子:
首先,準(zhǔn)備要爬網(wǎng)的URL列表并將其放入單獨(dú)的文件/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服務(wù)器上啟動一個蜘蛛運(yùn)行。蜘蛛會收到一個(蜘蛛)論點(diǎn) 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號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: