这个是自己用来练习的一个小项目 从头到尾实现一个简易的搜索引擎,搜索引擎里当然有很多核心的算法和技术,这里只做最轮廓的东西,当然了, 你也可以为公司内部,针对产品,运维,开发,测试等所产生的文档抓取,入ES,实现一个知识库,方便大家的搜索
首页门面使用vue.js
网站内容使用flask,提供必须的接口
分布式爬虫部分,暂定知乎,伯乐在线, 微博三个网站, 每个网站10W条数据以上
爬虫采用scrapy + scrapy-redis来搭建,并且加入布隆过滤器,实现增量的爬取,所有的项目都运行在容器中,并且使用k8s管理起来
搜索引擎部分使用当下很火的ElasticSearch,,之后会根据开源项目试着自己实现一个简易搜索引擎
- 使用百度进行的搜索的时候, 我们可以看到一个结果集, 里面有标题, 结果的详情url, 内容详情(关键词标红),所以title,detail_url,contents都是必须要采集的字段
- 先从一个最简单的爬虫入手(jobbole),然后入ES,然后加入布隆过滤器,实现增量爬取.
- 然后加入scrapy-redis,改造成分布式.
- 开发知乎,微博爬虫.
- 开发vue首页,结果页