Boost搜索引擎
- 1.项目思维导图
- 2.项目总结
- 3.项目地址
1.项目思维导图
2.项目总结
该项目是基于Boost库实现一个搜索引擎功能,部署在Linux服务器上。支持多用户同时并发的访问服务器。用户可以通过浏览器访问服务器IP地址+端口号使用搜索引擎,通过搜索关键字获得想要的boost库信息。该项目大致逻辑如下:第一步、先去boots官网下载boost文档到云服务器上;第二步、对下载下来的html信息进行读取+去标签、数据清洗等处理,而后把处理好的数据放入指定指定文件目录下方便后续使用;第三步、根据关键字、或id构建正排倒排索引,这一步决定用户在搜索关键字的时候搜索结果排列的先后顺序;第四步、对搜索关键字进行分词处理,这里用的是第三方库CPPJieba分词;第五步、构建搜索结构,用户通过关键字的搜索获得相应的结果;第六步、编写html网页信息,与后端交互呈现结果。
网页搜索结果:
前端部分遗漏下一些问题暂时没解决,导致搜索框功能与后端交互失败,暂时没解决
通过控制台查看结果
问题描述:在搜索框输入搜索关键字的时候没有构建出搜索结果呈现,但是通过F12查看,后台是可以拿到搜索关键字的,并呈现结果的,可能是因为前端部分有bug未修复导致的 ,前端部分我不是特别擅长,如果大家有解决方案也欢迎交流一下~
总结:写这个项目从开始到最后结项断断续续的用了快一个月的时间,期间最头疼的就是功能测试时的各种调试了,利用了ChatGPT等工具帮助解决错误问题,在这个过程中也是收获了许多,对调试技能也提高了不少,项目整体结构并不复杂,但也需要对C++语法、设计模式、STL等知识有一定了解。
项目存在不足:
- 前端交付的网页问题 (上面有描述过)
- 对搜索结果的排序处理的比较简单粗暴:利用权重排序搜索结果,规则是:在标题中出现搜索关键词10+内容中出现1的暴力处理
- 搜索内容是提取在云服务上下载好的 存在时效性
- 其他…
3.项目地址
https://gitee.com/X_dragon1024/project-c/tree/master/Boost_%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E