mmr*_*151 0 python scrapy scrapy-spider scrapy-pipeline scrapy-splash
我正在使用scrapy刮掉一些大品牌来导入我网站的销售数据.目前我正在使用
DOWNLOAD_DELAY = 1.5
CONCURRENT_REQUESTS_PER_DOMAIN = 16
CONCURRENT_REQUESTS_PER_IP = 16
Run Code Online (Sandbox Code Playgroud)
我使用Item加载器指定css/xpath规则和Pipeline将数据写入csv.我收集的数据是原价,销售价格,颜色,尺寸,名称,图片网址和品牌.
我只为一个拥有大约10万网址的商家写了蜘蛛,这需要我大约4个小时.
我的问题是,对于10k网址,4小时听起来是否正常,或者它应该比这更快.如果是这样,我还需要做些什么来加快速度.
我只在本地使用一个SPLASH实例进行测试.但在生产中我计划使用3个SPLASH实例.
现在主要问题是,我有大约125个商家和每个平均10k产品.他们中的一对有超过150k的网址.
我需要每晚清理所有数据以更新我的网站.由于我的单个蜘蛛花了4个小时来刮掉10k网址,我想知道每晚实现125 x 10k网址是否真的是有效的梦想
我将非常感谢您对我的问题的经验输入.
您的DOWNLOAD_DELAY是按IP强制执行的,因此如果只有1个IP,那么10,000个请求将需要15000秒(10,000*1.5).那只是4个多小时.所以是的,这是正确的.
如果您正在抓取多个站点,那么它们将是不同的IP地址,因此它们应该或多或少地并行运行,因此仍然需要4个小时左右.
如果你要抓125个网站,那么你可能会在某个时候遇到不同的瓶颈.