Skip to content

big-wheel/wowsearch

Repository files navigation

wowsearch

一个开源的,基于爬虫的文档搜索工作流

介绍

这是一个搜索网页的玩意,适合于网页上内容索引(搜索)。
核心的工作流程为:

爬虫引擎 == 解析网页 ==> 数据适配 ==> 推送数据至数据索引服务 或 数据库(如 [elasticsearch](https://github.com/elastic/elasticsearch),[algolia](https://www.algolia.com/))

同时索引服务提供 Web API 用于搜索数据,并提供 UI 界面提供搜索交互 #1 使用户方便接入使用

怎么使用?

npm i wowsearch 之后,如下代码使用

import wowsearch from 'wowsearch'

const passed = await wowsearch({
  // Write config here
})
passed && console.log('wowsearch! 完成了站点数据爬取,同时推送至了远端')

配置说明点这 查看配置案例

如何贡献代码

  1. clone 代码库
  2. 在项目根目录执行脚本
npm i
npm run bootstrap

Todo

  • 目前使用 wowsearch 使用主进程负责 http 服务(获取爬取任务),child process 处理爬取任务;后续改造成使用 mq 管理任务和通信,不同的节点单独负责单独的任务(web + mq + crawl)