这是我论坛首贴,刚学 ruby 和 ror 半个月,现在想自己开发个项目练练手。
我是选择做一个小说站吧,先用 ror 快速搭了个架子,目前实现了分类、小说基本信息 (书名、作者、封面、介绍...) 两个模型。
第一阶段的打算是先从起点把小说基本信息采集下来录入数据库,大概一百多万部小说吧,之后再挂个常驻进程抓取每天更新的小说信息,并同步数据库。
现在爬虫我选择的 scrapy,一款 python 的异步网络爬虫吧,也是刚接触^^,爬虫规则部分已经写好了,现在的问题是如何入库,我想到的有两种方式:
1.在 scrapy 中 pipeline 中直接连接项目数据库,并进行读写操作。 2.在项目代码中暴露一个内部接口,scrapy 通过 http 协议将数据 post 到该接口,由 ror 统一进行入库操作。
方式 1 我觉得效率上要高,但要额外实现数据的验证。 方式 2 我觉得能保证数据的可靠性,但比较担忧其性能问题。
各位大婶以为如何是好呢?