5
回答
一个云架构的技术选型

我们公司想要做一个系统:

目的:从网络获得大量需要的数据,整理,存到自己的云平台上面,同时建立索引,然后可以用搜索引擎搜索想要的资料。

初始阶段:需要一个网络爬虫,爬取需要的网页,然后抽取文章内容,然后存入分布式数据库,同时建立索引。

请问我需要什么样的技术选型,最后给出原因,便于整理思路。

谢谢各位大神,前辈了。

还有爬虫可不可以用nutch??nutch爬下来的是 网页快照和url   还是整个网页的内容???

举报
俊铭
发帖于5年前 5回/1K+阅
共有5个答案 最后回答: 5年前
nutch是一个分布式的网络爬虫,和hadoop、lucene属于同一个体系。nutch可以很方便的和lucene或者solr整合,它抓取和去重的功能也是使用的mapreduce.当然对爬虫有用的东西也就是网页内容还有响应头,nutch爬取下来的东东就是我们写的html代码~或者说结构化或半结构话的文本。然后从文本中抽取出来url经过去重和过滤后放入抓取队列继续下一次的抓取。 目前不知道你们的数据量有多大,如果可以的话建议楼主先看一下HttpClient包,基本上看过demo就能写一个不太复杂的爬虫了。 另外需要了解一下jsoup这个工具包,他是用来解析页面的,提取有用信息,提取url等,其实他也有抓取的功能,不一定非要用HttoClient。 如果有时间就再了解一下Http协议吧,如果以后你做这个东西理解底层会对你帮助很大。 差不多就这些了,对了osc上有一个开源爬虫webmagic @黄亿华
忘记说了,索引的话就Lucene或者solr,用solr比较方便一点吧,估计你们公司是java体系的,如果是php+c不妨看一下http://www.oschina.net/news/46756/xunsearch-1-4-8 这个我没用过,国人开发,看起来很靠谱的样子。
@Anterior  我们公司用的是java体系。如果nutch能取到整个页面,我就可以用nutch 直接去抓取想要的网页了,然后自己再写一个解析工具,不同的网站的格式不一样,所以解析也不一样吧,那样的化是不是要一个网站一个解析格式?

多谢推荐!nutch高大上,Hadoop的母项目,分布式支持到位,数据量大的话必然是首选。具体我也没用过,但是估计得自己写抽取规则。

webmagic主要工作在抽取,同时带一些管理和分布式功能。

看你们的场景,如果量小(千万级及以下),重抽取(需要解析成结构化的数据而不是保存网页),那么webmagic是个选择。如果量大,需要和搜索整合,还是用nutch吧。

--- 共有 2 条评论 ---
黄亿华回复 @俊铭 : 那至少是亿级的页面量了,还是用nutch比较好 5年前 回复
俊铭我们的最终数据量有可能超过12T,而且还重抽取 5年前 回复
顶部