我一直在广泛使用Scrapy网络抓取框架,但是最近我发现还有一个名为的框架/系统pyspider,根据github页面的介绍,该框架/系统是新鲜的,积极开发的并且很流行。
Scrapy
pyspider
pyspider的首页列出了一些现成可用的支持内容:
这些是它们Scrapy本身不提供的东西,但是,可以借助portia(对于Web UI),scrapyjs(对于js页面)和scrapyd(通过API部署和分发)的帮助。
portia
scrapyjs
scrapyd
真的可以pyspider单独替换所有这些工具吗?换句话说,是pyspider Scrapy的直接替代品吗?如果没有,那么它涵盖了哪些用例?
pyspider和Scrapy具有相同的目的,即网页抓取,但对此目的的看法不同。
spider永远都不要停止,直到WWW死了。(信息被改变,数据在网站更新,蜘蛛应该有刮最新数据的能力和责任。这就是为什么pyspider具有URL数据库,强大的调度,@every,age,等..)
@every,age
pyspider比框架更能提供服务。(组件在隔离的进程中运行,精简版- all版本也作为服务运行,你不必具有Python环境,而是浏览器,有关获取或调度的所有操作均由脚本通过API控制,而不是由启动参数或全局配置,资源/项目控制由pyspider等管理)。
- all
pyspider是一个spider系统。(可以替换任何组件,甚至可以用C / C ++ / Java或任何语言开发,以提高性能或扩大容量)
和
PyQuery +你喜欢的任何第三个软件包与内置CSS / Xpath支持 实际上,我对Scrapy的引用并不多。pyspider与Scrapy确实不同。