到目前为止,我们使用Scrapyd service已经有一段时间了。它为一个scrapy项目提供了一个很好的包装器,并且它的爬行器可以通过HTTP API控制爬行器:
Scrapyd是一个用于运行Scrapy爬行器的服务。
它允许您部署Scrapy项目并使用HTTP JSON API控制它们的爬行器。
但是,最近我注意到了另一个“新鲜”的包-- ScrapyRT,根据项目描述,它听起来非常有前途,类似于Scrapyd
Scrapy
服务器,它提供了用于调度Scrapy爬行器和使用爬行器进行请求的应用程序接口。
这个包是Scrapyd的替代品吗?若有,两者有何分别?
发布于 2016-05-18 04:22:07
他们没有太多的共同点。正如您已经看到的,您必须将您的爬虫部署到scrapyd,然后计划爬行。scrapyd是一个在服务器上运行的独立服务,您可以在其中部署和运行您喜欢的每个项目/爬行器。
使用ScrapyRT,您可以选择一个项目,然后通过cd连接到该目录。然后运行scrapyrt,通过一个简单的(非常类似于scrapyd的) REST API开始爬行该项目中的爬虫。然后将抓取的项目作为JSON响应的一部分返回。
这是一个非常好的想法,它看起来快速,精简,定义良好。另一方面,Scrapyd更成熟,更通用。
以下是一些关键的区别:
url参数,据我所知,该参数会覆盖任何start_urls-related逻辑。我想说的是,ScrapyRT和Scrapyd在这一点上非常巧妙地没有重叠。当然,你永远不会知道未来会发生什么。
https://stackoverflow.com/questions/37283531
复制相似问题