面向美食的垂直搜索引擎的設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2020-09-03 13:59
隨著這些年來(lái)互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)絡(luò)上面的信息越來(lái)越煩雜,信息量越來(lái)越大。面對(duì)著網(wǎng)絡(luò)上面的海量數(shù)據(jù),想要從中尋找到自己想要的信息,也變得困難起來(lái)。為了解決互聯(lián)網(wǎng)用戶信息檢索的迫切需要,搜索引擎應(yīng)運(yùn)而生。我們常用的搜索引擎如谷歌、百度等叫做通用搜索引擎,用戶可以通過(guò)輸入關(guān)鍵詞在網(wǎng)絡(luò)中查詢到擁有該關(guān)鍵詞的信息。但是通用搜索引擎的搜索結(jié)果缺乏針對(duì)性,搜索結(jié)果多但是有用信息少。為了為用戶提供更好的更有效率的檢索體驗(yàn),垂直搜索引擎應(yīng)運(yùn)而生。垂直搜索引擎是針對(duì)特定需求的用戶執(zhí)行搜索功能的搜索引擎,它的查詢效率更高,查詢效果更好。垂直搜索引擎是專門針對(duì)于某一領(lǐng)域的搜索引擎,查詢結(jié)果都是在該領(lǐng)域中包含搜索關(guān)鍵字的信息,為檢索用戶節(jié)省了在通用搜索引擎中篩選無(wú)關(guān)信息所浪費(fèi)的大量時(shí)間。現(xiàn)如今,在互聯(lián)網(wǎng)上的垂直搜索引擎五花八門,其中針對(duì)音樂、圖片、新聞和購(gòu)物的垂直搜索引擎比較多,針對(duì)美食的比較少。但是隨著現(xiàn)如今人們的生活水平的提高,卻有越來(lái)越多的人不知道每天要吃什么、去哪里吃、如何健康的吃,一個(gè)面向美食的垂直搜索引擎能夠幫助人們解決這些問題。面向美食的垂直搜索引擎能夠幫用戶篩選互聯(lián)網(wǎng)中的與美食無(wú)關(guān)的信息,用戶即使輸入一個(gè)看似與美食無(wú)關(guān)的詞語(yǔ),也可以在其中檢索到各種該詞語(yǔ)與美食相關(guān)的推薦、菜譜和餐廳等信息,如搜索“冬天”,將查詢到各種與冬天有關(guān)的美食信息。本文將介紹一個(gè)針對(duì)于美食領(lǐng)域的垂直搜索引擎的研究與實(shí)現(xiàn)的全過(guò)程。其中包括對(duì)網(wǎng)絡(luò)數(shù)據(jù)的獲取和對(duì)獲取數(shù)據(jù)的處理、對(duì)索引的研究以及最后對(duì)垂直搜索引擎系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。在數(shù)據(jù)的獲取和處理中,將使用Heritrix制作網(wǎng)絡(luò)爬蟲爬取互聯(lián)網(wǎng)中的數(shù)據(jù),Heritrix是一個(gè)純由Java開發(fā)的、開源的Web網(wǎng)絡(luò)爬蟲,用戶可以使用它從網(wǎng)絡(luò)上抓取想要的資源[1]。然后使用正則表達(dá)式和HTMLParser提取網(wǎng)頁(yè)內(nèi)容,通過(guò)ICTCLAS和IKAnalyzer進(jìn)行中文分詞的研究,之后還要進(jìn)行去重、詞頻統(tǒng)計(jì)和排序等數(shù)據(jù)的研究和處理。在索引的創(chuàng)建方面,需要研究Lucene和Solr,Solr是在Lucene的基礎(chǔ)上對(duì)Lucene的進(jìn)一步封裝,能夠提高索引的效率。在最后的系統(tǒng)創(chuàng)建部分,將使用Spring+Struts+Hibernate框架,在數(shù)據(jù)庫(kù)方面,將使用開源的關(guān)系型數(shù)據(jù)庫(kù)MySQL。
【學(xué)位單位】:吉林大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位年份】:2018
【中圖分類】:TP391.3
【部分圖文】:
第 2 章 美食數(shù)據(jù)的獲取和處理2.2 Heritrix 的主題抓取策略和優(yōu)化Heritrix 是一個(gè)開源的、可擴(kuò)展的網(wǎng)絡(luò)爬蟲項(xiàng)目,用戶可以使用它從網(wǎng)絡(luò)上爬取想要的資源。Heritrix 是由 Java 開發(fā)的一個(gè) Java 的開源框架,它通過(guò)深度遍歷網(wǎng)站資源,分析網(wǎng)站中每一個(gè)有效的 URI,將網(wǎng)站內(nèi)容抓取到本地。Heritrix的架構(gòu)如圖 2.4 所示。
第 2 章 美食數(shù)據(jù)的獲取和處理(2)取消 robot.txt 的限制很多網(wǎng)站會(huì)創(chuàng)建一個(gè) robot.txt 文件,在文件中指明不想被訪問的部分。如果在爬取過(guò)程中一一訪問這些文件,將會(huì)大大影響抓取的效率,甚至導(dǎo)致整個(gè)抓取任務(wù)的失敗。為了提高抓取的效率,可以在 Heritrix 的 PreconditionEnforcer 中的considerRobotsPreconditions 方法下設(shè)置返回值為 false,這樣在抓取過(guò)程中將不會(huì)考慮 robot.txt 文件。圖 2.5 和圖 2.6 分別是以美食天下為例在 Heritrix 優(yōu)化前與優(yōu)化后的爬取結(jié)果。從圖中可以看出,爬取時(shí)間有了很大的變化。
優(yōu)化后爬取報(bào)告
【學(xué)位單位】:吉林大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位年份】:2018
【中圖分類】:TP391.3
【部分圖文】:
第 2 章 美食數(shù)據(jù)的獲取和處理2.2 Heritrix 的主題抓取策略和優(yōu)化Heritrix 是一個(gè)開源的、可擴(kuò)展的網(wǎng)絡(luò)爬蟲項(xiàng)目,用戶可以使用它從網(wǎng)絡(luò)上爬取想要的資源。Heritrix 是由 Java 開發(fā)的一個(gè) Java 的開源框架,它通過(guò)深度遍歷網(wǎng)站資源,分析網(wǎng)站中每一個(gè)有效的 URI,將網(wǎng)站內(nèi)容抓取到本地。Heritrix的架構(gòu)如圖 2.4 所示。
第 2 章 美食數(shù)據(jù)的獲取和處理(2)取消 robot.txt 的限制很多網(wǎng)站會(huì)創(chuàng)建一個(gè) robot.txt 文件,在文件中指明不想被訪問的部分。如果在爬取過(guò)程中一一訪問這些文件,將會(huì)大大影響抓取的效率,甚至導(dǎo)致整個(gè)抓取任務(wù)的失敗。為了提高抓取的效率,可以在 Heritrix 的 PreconditionEnforcer 中的considerRobotsPreconditions 方法下設(shè)置返回值為 false,這樣在抓取過(guò)程中將不會(huì)考慮 robot.txt 文件。圖 2.5 和圖 2.6 分別是以美食天下為例在 Heritrix 優(yōu)化前與優(yōu)化后的爬取結(jié)果。從圖中可以看出,爬取時(shí)間有了很大的變化。
優(yōu)化后爬取報(bào)告
【參考文獻(xiàn)】
相關(guān)期刊論文 前7條
1 嚴(yán)磊;馬勇男;丁賓;鄭濤;;垂直搜索引擎之主題網(wǎng)絡(luò)爬蟲[J];福建電腦;2013年03期
2 顧t
本文編號(hào):2811536
本文鏈接:http://sikaile.net/kejilunwen/sousuoyinqinglunwen/2811536.html
最近更新
教材專著