搜索引擎軟件使用說明書_第1頁
搜索引擎軟件使用說明書_第2頁
搜索引擎軟件使用說明書_第3頁
搜索引擎軟件使用說明書_第4頁
搜索引擎軟件使用說明書_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、搜索引擎軟件v1.0 1 搜索引擎軟件使用說明書1 軟件概述1.1 編寫目的隨著計(jì)算機(jī)產(chǎn)業(yè)的迅猛發(fā)展,搜索引擎也應(yīng)運(yùn)而生。用戶直接獲得自己想要的信息其實(shí)是很簡單, 但是面對著簡單的搜索框,很多用戶都只是了解大概,要想了解的更徹底關(guān)鍵在于學(xué)會(huì)怎么來用。為了用戶能夠更快更方便的獲得想要的信息,本人針對自己開發(fā)的搜索引擎包特編寫了使用說明書。1.2 搜索引擎介紹1.2.1 搜索引擎定義搜索引擎主要用于幫助互聯(lián)網(wǎng)用戶查詢信息的搜索工具,它以一定的策略在互聯(lián)網(wǎng)中搜集、發(fā)現(xiàn)信息,對信息進(jìn)行理解、提取、組織及處理,并且能為用戶提供檢索服務(wù),從而起到信息導(dǎo)航的目的因此,搜索引擎是用來在網(wǎng)上找資料的工具。1.2

2、.2 搜索引擎系統(tǒng)結(jié)構(gòu)圖網(wǎng)路爬蟲目標(biāo)站點(diǎn)鏡像html 文件前期處理程序過濾不需要的html ,只保留價(jià)格和商品描述,存成文本文件文本文件建索引程序搜索搜索程序通過 socket 提供搜索服務(wù)java 搜索界面圖 1 系統(tǒng)結(jié)構(gòu)圖1.2.3主要功能搜索引擎軟件v1.0 2 本人開發(fā)的搜索引擎主要是進(jìn)行信息檢索,從而返回檢索結(jié)果。搜索引擎將用戶所產(chǎn)生的一些信息列入了排序因素中,具有對各大商城的網(wǎng)站進(jìn)行抓取、建立索引、 搜索比價(jià)的功能。它是網(wǎng)絡(luò)營銷中最重要的組成部分,是向終端客戶傳遞信息的重要環(huán)節(jié)。搜索界面如下圖:1.2.4 主要特點(diǎn) 快速地為搜索文件建立索引,支持追加,重建,和不同編碼

3、的搜索文件。 搜索引擎支持關(guān)鍵字搜索,與或非邏輯搜索,支持按需返回搜索結(jié)果。 web服務(wù)器能快速連接搜索引擎,支持用戶的多樣化搜索,并展示搜索結(jié)果。2 如何編譯 fts 1. aclocal 2. automake -add-missing 3. autoconf 4. ./configure 5. make 搜索引擎軟件v1.0 3 編譯成功以后,在./src/目錄下,有index.exe, search.exe 和 shutdown.exe 。2.1 index.exe index.exe是對網(wǎng)絡(luò)爬蟲抓來的網(wǎng)頁建立索引,-d 源目錄, -d 索引目錄, -r 重

4、建索引(只在第一次用) ,-c 國標(biāo)或臺(tái)灣$ ./index -d /cygdrive/c/tf/src/ -d /cygdrive/c/tf/trg -r -c gb2312 start indexing . indexing /cygdrive/c/tf/src/copy of baima.t4i # of files processed : 1 # of files indexed : 1 total data processed : 136.242 kb. average processing rate : 45.4141 kbps. total time used : 3 secon

5、ds. total processor time used : 2.875 seconds. cpu usage : 95.8333% 2.2 search.exe search.exe 會(huì)在已建立的索引上運(yùn)行一個(gè)socket 服務(wù)器, 可以接收多個(gè)搜索請求,默認(rèn)聽在端口30001。$ ./search -d /cygdrive/c/tf/trg/ infoacer fts search engine is running on port 30001. 搜索請求的格式是:get3 with_hilite 在搜索結(jié)果中高亮關(guān)鍵詞with_ranking 按照評(píng)分的標(biāo)準(zhǔn)with_id_path 返

6、回文件路徑或url with_sort 排序搜索引擎軟件v1.0 4 返回結(jié)果以tlv來切分多個(gè)結(jié)果。2.3 shutdown.exe shutdown.exe 用來安全關(guān)閉search.exe的服務(wù)。3 如何使用3.1 搜索引擎準(zhǔn)備事項(xiàng)3.1.1 搜索引擎軟件包圖 2 搜索引擎軟件包我們要用到以下兩個(gè)文件:index.exe 用來建立索引。 search.exe 用來開啟搜索引擎。3.1.2 t4i文件搜索引擎軟件v1.0 5 t4i文件即為 *.t4i文件,它是要檢索的內(nèi)容來源。與該搜索引擎匹配的t4i文件須有如下格式:content1 content2 content3 . 紅色部分為詳

7、細(xì)內(nèi)容。比如一手機(jī)信息的t4i文件為:圖 3 現(xiàn)版本搜索引擎僅支持big5 和 gb2312編碼,所以t4i文件中應(yīng)采用以上兩種編碼。為支持全文搜索,強(qiáng)烈建議增加最后一個(gè)欄位,添加所有信息。如圖中欄位。3.1.3 文件拷貝通常,把t4i文件拷貝到search/tf/src/目錄下(假定search.exe和 index.exe在search/ 目錄下) , 如圖 4 所示:圖 4 搜索引擎軟件v1.0 6 另在 tf目錄下新建文件夾trg 。 (缺少該步驟建索引時(shí)會(huì)報(bào)錯(cuò))3.2 建立索引并開啟搜索引擎3.2.1 建索引index.exe是對 t4i文件建立索引,-d 源目錄, -d 索引目錄,

8、 -r 重建索引(只在第一次用),-c 國標(biāo)或臺(tái)灣r 遍歷子目錄可用 h 查看幫助。運(yùn)行命令提示符,轉(zhuǎn)到搜索引擎目錄。建索引命令格式index.exe d tfsrc d tftrg r -r c gb2312 索引建立完畢,結(jié)果如下:3.2.2 開啟搜索引擎search.exe 會(huì)在已建立的索引上運(yùn)行一個(gè)socket 服務(wù)器, 可以接收多個(gè)搜索請求,默認(rèn)聽在端口30001。命令如下,執(zhí)行后程序便會(huì)在30001 端口監(jiān)聽搜索請求。3.3 使用搜索引擎需要發(fā)送兩條tcp包和接受兩條tcp包來完成搜索過程。搜索引擎軟件v1.0 7 第一步:與search.exe建立 socket 連接。第二步:發(fā)

9、送搜索請求。query vector:( keyword )# num ;n 其中 keyword 表示要查詢的關(guān)鍵字,num表示欄位號(hào)碼。如想在欄位6 中搜索“諾基亞”, 搜索請求命令這樣寫:query vector:( 諾基亞 )#6;n 另外,還支持多欄位搜索,可通過& | !來創(chuàng)建與或非邏輯表達(dá)式。如果想搜索太平洋商城的諾基亞,搜索請求命令這樣寫:query vector:( 諾基亞 )#6 &( 太平洋 )#0;n 一般說來,搜索引擎反饋結(jié)果為ok 2 ;n 是搜索引擎內(nèi)部的id,有多少個(gè)id 就有多少個(gè)cache 搜索結(jié)果。是此次搜索共有多少個(gè)結(jié)果。如 ok 2 0

10、 100表示搜索到100 個(gè)結(jié)果。如果接收到failed 2 -1 ;n 或其他,表示本次搜索失敗。通常是搜索請求命令有錯(cuò)。第三步:發(fā)送接收搜索結(jié)果命令。get3 with_sort with_hilite with_id_path;n 是從上一個(gè)ok回復(fù)得來的,同時(shí)也知道有多少個(gè)命中 表示請求搜索結(jié)果的id??砂阉阉鹘Y(jié)果想象一數(shù)組,兩參量表示數(shù)組下標(biāo)。with_hilite 是返回需要高亮的關(guān)鍵詞(不一定和用戶輸入結(jié)果一致)with_sort 是對結(jié)果進(jìn)行排序with_id_path 是返回原始文件本地路徑如想得到前兩個(gè)結(jié)果:get3 0 1 ith_sort with_hilite wit

11、h_id_path;n 搜索引擎響應(yīng):ok 13 # content是該 t4i的內(nèi)容。此回復(fù)會(huì)含多個(gè) ,搜索引擎軟件v1.0 8 具體數(shù)目是由 決定的。如果不涉及價(jià)位區(qū)間搜索,到此就該結(jié)束了。如果要做區(qū)間,可參考下面文字(圖5) 。圖 5 4 前期處理搜索引擎軟件v1.0 9 將字典文件讀入內(nèi)存讀取目標(biāo)頁面去處html 標(biāo)記,只保留文本和網(wǎng)址信息按字典中的關(guān)鍵字對頁面進(jìn)行掃描命中率是否為0?保存成文本格式丟棄圖 6 前期處理流程圖在網(wǎng)絡(luò)爬蟲程序把目標(biāo)網(wǎng)頁存到本地后,應(yīng)該用處理程序進(jìn)行初步處理,根據(jù)不同的字典來進(jìn)行掃描,將html 控制代碼,多余的廣告的無用信息去除,只保存有命中率的頁面并存成

12、純文本格式,這樣會(huì)提高索引準(zhǔn)確率和效率。這里提到的字典是人工創(chuàng)建的,開發(fā)人員應(yīng)將不同類別的關(guān)鍵詞匯放到字典文件中,由前期處理程序讀取并記錄每個(gè)目標(biāo)頁面關(guān)鍵詞的命中率,當(dāng)所有關(guān)鍵詞的命中率為0 時(shí),此頁面將被丟棄,否則轉(zhuǎn)換成文本格式以便建索引。如何建立字典?除了人們?nèi)粘5脑~匯,開發(fā)人員應(yīng)下載一些不同類別的目標(biāo)頁面,搜集最新關(guān)鍵詞來豐富詞典,從而提高字典的準(zhǔn)確性。如果想要不同的分類,比如餐飲,電子和旅游,那么就要有三個(gè)字典,分別包含餐飲,電子和旅游的關(guān)鍵詞。這樣通過前期處理程序就會(huì)有三類文本文件,分別對應(yīng)餐飲, 電子和旅游這三類。也就意味著有三個(gè)分類索引,這樣用戶就可選擇不同類別的搜索。這樣用戶可

13、以選擇不同類別來搜索,可以增大命中率。 當(dāng)然也可以選擇所有類別來搜索。搜索引擎軟件v1.0 10 5 搜索界面應(yīng)由 java 語言寫成,提供不同類別的搜索界面,就像雅虎的分類搜索,列出所有的類別。用戶也可以搜索所有類別,但搜索引擎就會(huì)跨越所有類別,速度和準(zhǔn)確率都會(huì)有所下降。6 handler環(huán)境搭建與配置handler 是搜索引擎與客戶端的中間環(huán)節(jié),負(fù)責(zé)向搜索引擎請求搜索數(shù)據(jù),并把返回結(jié)果展示給客戶端。該部分是基于ruby on rails 開發(fā)的,接下來將帶你一步步搭建和配置該環(huán)境,并進(jìn)行測試。步驟如下:ruby on rails 的下載與安裝工程文件導(dǎo)入開啟搜索引擎開啟服務(wù)器測試,界面瀏覽

14、6.1 ruby on rails 的下載與安裝instantrails 最新版本為2.0,下載地址是/frs/?group_id=904&release_id=17517。下載這一個(gè)搜索引擎軟件v1.0 11 instantrails 是綠色軟件,下載完畢后解壓即可使用。6.2 工程文件導(dǎo)入rails 工程文件導(dǎo)入將 test 文件解壓到 %railsroot%instantrails-2.0-winrails_apps下,其中 %railsroot%是 instantrails 的安裝路徑。下圖為本機(jī)上的解壓路徑。t4i 文件導(dǎo)入將 t4i 文

15、件拷貝到 %serchroot%searchtfsrc 下, %serchroot%是搜索引擎search所在目錄。6.3 開啟搜索引擎建立索引運(yùn)行命令提示符,進(jìn)入搜索引擎search所在目錄。輸入命令如下:結(jié)果如下:搜索引擎軟件v1.0 12 啟動(dòng)搜索引擎命令如下,執(zhí)行后程序便會(huì)在30001 端口監(jiān)聽搜索請求。6.4 開啟服務(wù)器在開啟服務(wù)器之前,需要針對搭建環(huán)境修改部分代碼。更改 ip 如 果 不 是 本 機(jī) 測 試 , 即 搜 索 引 擎 和handler 不 在 同 一 臺(tái) 機(jī) 器 上 運(yùn) 行 , 需 要 修改 %railsroot%instantrails-2.0-winrails_a

16、pptestappcontrollersbridge_controller.rb文件,將line20 中“ ”改為搜索引擎所在主機(jī)的ip 地址。 %railsroot% 是 instantrails 的安裝路徑。本機(jī)運(yùn)行跳過此步驟。重定位資源文件目錄打開 %railsroot%instantrails-2.0-winrails_appstestappviewsbridgesearch.html.erb 搜索引擎軟件v1.0 13 將 line29 中的e:javaworkspaceheritrixjobsjingdongshangcheng-20110707095841078

17、mirror替換為抓取的網(wǎng)頁所在目錄。否則瀏覽時(shí)不能顯示圖片。啟動(dòng)服務(wù)器打開 %railsroot%instantrails-2.0-wininstantrails.exe,點(diǎn)擊“工”字形圖標(biāo),在彈出網(wǎng)頁中選擇rails applicationsmanage rails applications. 在彈出的 rails applications 頁面下勾選test 工程,點(diǎn)擊configure startup mode. 可以配置端口,這里我使用的是3003 端口。點(diǎn)擊按鈕start with mongrel 。服務(wù)器啟動(dòng)完畢效果如下:搜索引擎軟件v1.0 14 6.5 界面瀏覽測試打開 ie,鍵入地址 http:/localhost:3003/bridge/index ,結(jié)果如圖7 所示:圖 7 在圖 8 中輸入搜索關(guān)鍵字,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論