Python面試真題- scrapy和scrapy-redis有什么區(qū)別?為什么選擇redis數(shù)據(jù)庫?
【Python面試真題】- scrapy和scrapy-redis有什么區(qū)別?為什么選擇redis數(shù)據(jù)庫?
1) scrapy是一個Python爬蟲框架,爬取效率極高,具有高度定制性,但是不支持分布式。而scrapy-redis一套基于redis數(shù)據(jù)庫、運行在scrapy框架之上的組件,可以讓scrapy支持分布式策略,Slaver端共享Master端redis數(shù)據(jù)庫里的item隊列、請求隊列和請求指紋集合。
2) 為什么選擇redis數(shù)據(jù)庫,因為redis支持主從同步,而且數(shù)據(jù)都是緩存在內(nèi)存中的,所以基于redis的分布式爬蟲,對請求和數(shù)據(jù)的高頻讀取效率非常高。