1 項(xiàng)目的功能
爬取新聞(爬取網(wǎng)站可配置兔朦,精準(zhǔn)爬取需要內(nèi)容);
抽取新聞內(nèi)容磨确,存入數(shù)據(jù)庫(kù)(精準(zhǔn)抽裙辽);
建立索引(Solr)乏奥;
搜索服務(wù)(Solr)摆舟;
2項(xiàng)目整體模式
各個(gè)項(xiàng)目的作用,之間的聯(lián)系
項(xiàng)目分為三個(gè)模塊:
- 1 myretrieve:底層公共功能封裝邓了。
- 2 myfullretrieve:通過(guò)新服務(wù)恨诱,從數(shù)據(jù)庫(kù)取出數(shù)據(jù),建立索引骗炉。
- 3 mysearch:通過(guò)新服務(wù)照宝,實(shí)現(xiàn)爬取和搜索功能。
image.png
image.png
3 項(xiàng)目各部分詳解
1 myretrieve 底層公共功能封裝
作用:將常用的功能:1 Lucene建立索引句葵、搜索功能厕鹃;2 Solre建立索引、搜索功能乍丈;3 常用的字符串剂碴、文件操作功能封裝。
第一部分api包:
- 1 將索引需要的參數(shù)(FullTextIndexParams)轻专;(2)搜索需要的參數(shù)(FullTextSearchPrarms)忆矛,封裝成類。
- 2 將solr和lucene所有底層代碼铭若,例如啟動(dòng)服務(wù)洪碳、建立索引、搜索等功能封裝成一個(gè)接口(FullTextService)叼屠;將搜索返回的各類結(jié)果集瞳腌,例如正常結(jié)果集、根據(jù)某個(gè)字段排序結(jié)果集封裝為一個(gè)接口(FullTextResult)镜雨。
image.png
image.png
image.png
2 myfullretrieve 數(shù)據(jù)庫(kù)取出數(shù)據(jù)嫂侍,建立索引
啟動(dòng)新服務(wù),不斷監(jiān)測(cè)數(shù)據(jù)庫(kù)荚坞,抽取數(shù)據(jù)挑宠,建立索引。
(1)間隔時(shí)間監(jiān)測(cè)數(shù)據(jù)庫(kù)是否有需要建索引的字段颓影。(OpIndex.java)
(2)抽取完整性詞導(dǎo)入IK詞庫(kù)各淀,并利用其分詞(IndexCommonServer.java、IndexServer.java)诡挂;
(3)操作數(shù)據(jù)庫(kù)碎浇,取出數(shù)據(jù),建立索引(IndexCommonServer.java璃俗、IndexServer.java)奴璃。
image.png
3 mysearch 爬取和搜索功能,前臺(tái)UI頁(yè)面操作
通過(guò)SSH + EasyUI搭建前臺(tái)框架城豁,實(shí)現(xiàn)自動(dòng)化建立垂直搜索引擎苟穆。
1 前臺(tái)搜索界面
image.png
2 后臺(tái)管理界面
(1)爬取網(wǎng)站界面
image.png
(2)新增爬取網(wǎng)站界面
image.png
(3)網(wǎng)絡(luò)數(shù)據(jù)管理界面
image.png
(4)配置索引界面
image.png
(5)添加欄目(主題)
image.png