• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Heritrix和Sphinx的購(gòu)物比較搜索引擎研究

      2014-10-29 21:06:40李遠(yuǎn)遠(yuǎn)
      中國(guó)新通信 2014年19期
      關(guān)鍵詞:搜索引擎

      李遠(yuǎn)遠(yuǎn)

      【摘要】 本文提出采用Heritrix和Sphinx技術(shù)搭建購(gòu)物搜索引擎,將國(guó)內(nèi)大型B2C網(wǎng)站作為爬取信息來(lái)源,運(yùn)用聚焦爬蟲技術(shù)將目標(biāo)定為抓取與用戶某一特定體驗(yàn)主題內(nèi)容相關(guān)的網(wǎng)頁(yè)搜索引擎模型的探索與研究。

      【關(guān)鍵詞】 比較購(gòu)物 搜索引擎 Heritrix

      隨著網(wǎng)絡(luò)商品的極大豐富和分類的細(xì)化,搜索引擎已成為購(gòu)物信息的重要來(lái)源。比較購(gòu)物搜索引擎是一種基于專業(yè)化的垂直搜索引擎,通過(guò)對(duì)電子商務(wù)網(wǎng)站或者部分實(shí)體店的商品信息進(jìn)行采集和整理,向消費(fèi)者提供特定準(zhǔn)確的商品信息及相關(guān)輔助設(shè)施,減少信息不對(duì)稱,優(yōu)化購(gòu)買決策;同時(shí),幫助商家降低推廣成本獲得針對(duì)性極高的目標(biāo)用戶,是未來(lái)網(wǎng)絡(luò)購(gòu)物搜索的發(fā)展趨勢(shì)。然而,目前國(guó)內(nèi)的比較購(gòu)物引擎普遍追求“大而全”,在細(xì)化用戶需求和購(gòu)物體驗(yàn)上較為欠缺。商品信息比較偏重價(jià)格方面,對(duì)影響購(gòu)物體驗(yàn)的其他因素,諸如商家信譽(yù)、折扣降價(jià)、用戶評(píng)價(jià)、退換條款等較少涉及。本文提出采用Heritrix和Sphinx技術(shù)搭建購(gòu)物搜索引擎,將國(guó)內(nèi)大型B2C網(wǎng)站作為爬取信息來(lái)源,運(yùn)用聚焦爬蟲技術(shù)將目標(biāo)定為抓取與用戶某一特定體驗(yàn)主題內(nèi)容相關(guān)的網(wǎng)頁(yè),以期更好的細(xì)分消費(fèi)者人群,有針對(duì)性地滿足用戶體驗(yàn)。

      一、Heritrix和Sphinx技術(shù)特點(diǎn)

      1.1 Heritrix工作原理

      Heritrix是一款基于java 語(yǔ)言開發(fā)的開源網(wǎng)絡(luò)爬蟲,用于對(duì)網(wǎng)上的資源進(jìn)行歸檔,建立網(wǎng)絡(luò)數(shù)字圖書館,目前已經(jīng)建立了400TB的數(shù)據(jù)。

      Heritrix爬蟲每次只對(duì)一張網(wǎng)頁(yè)的內(nèi)容深度復(fù)制,包括獲取圖像以及其它非文本內(nèi)容,抓取并存儲(chǔ)相關(guān)的內(nèi)容。具體篩爬過(guò)程中,爬蟲先從隊(duì)列中取出下一個(gè)URL,通過(guò)HTTP協(xié)議將對(duì)應(yīng)的網(wǎng)頁(yè)爬取下來(lái),然后解析內(nèi)容,并且提取出包含的URL,將其中新發(fā)現(xiàn)的URL追加到隊(duì)列中。最后將網(wǎng)頁(yè)存放到本地磁盤的網(wǎng)頁(yè)庫(kù)中。爬取過(guò)程在積累到一定數(shù)量網(wǎng)頁(yè)時(shí)即可終止,或者在隊(duì)列為空的時(shí)候終止。

      1.2 Sphinx工作原理

      Sphinx是一個(gè)基于SQL的全文檢索引擎,本系統(tǒng)所采用的是基于Sphinx研發(fā)并獨(dú)立發(fā)布的Coreseek,是一款專攻中文搜索和信息處理的中文全文檢索/搜索軟件,它適用于行業(yè)/垂直搜索、論壇/站內(nèi)搜索、數(shù)據(jù)庫(kù)搜索、文檔/文獻(xiàn)檢索、信息檢索、數(shù)據(jù)挖掘等應(yīng)用場(chǎng)景。Sphinx(Coreseek)整個(gè)系統(tǒng)主要由索引建立和維護(hù)程序(索引程序indexer)、查詢服務(wù)程序(后臺(tái)服務(wù)程序searchd) 、輔助工具程序(search, spelldump等)三大部分組成。

      二、比較購(gòu)物搜索引擎系統(tǒng)構(gòu)建

      2.1系統(tǒng)架構(gòu)

      系統(tǒng)整體架構(gòu)由四部分組成:1)由Heritrix擴(kuò)展而來(lái)的爬蟲系統(tǒng),負(fù)責(zé)從互聯(lián)網(wǎng)抓取商品相關(guān)的信息。2)MySQL數(shù)據(jù)庫(kù),存儲(chǔ)由Heritrix抓取的數(shù)據(jù)。3)Sphinx全文索引服務(wù)器,負(fù)責(zé)對(duì)商品建立全文索引。4)Tomcat服務(wù)器,負(fù)責(zé)向客戶端提供搜索服務(wù)。具體系統(tǒng)整體架構(gòu)圖如圖1。

      在初始化階段,Heritrix任務(wù)需事先通過(guò)配置和測(cè)試,確認(rèn)后可由Linux系統(tǒng)通過(guò)Cron來(lái)自動(dòng)調(diào)度。根據(jù)用戶輸入的商品信息,網(wǎng)絡(luò)爬蟲的每個(gè)抓取任務(wù)只負(fù)責(zé)單個(gè)購(gòu)物網(wǎng)站數(shù)據(jù)的抓取,但每個(gè)任務(wù)的線程數(shù)量可由實(shí)際情況進(jìn)行調(diào)整。篩爬啟動(dòng)和結(jié)束時(shí)間通過(guò)Bash腳本來(lái)監(jiān)控,每隔一定的時(shí)間去檢測(cè)相應(yīng)的進(jìn)程是否已經(jīng)結(jié)束,如果某個(gè)抓取任務(wù)結(jié)束,則設(shè)定好下一次啟動(dòng)的時(shí)間間隔。在本文構(gòu)建的模型中采用MySQL數(shù)據(jù)庫(kù)存儲(chǔ)篩爬的信息,但直接從MySQL數(shù)據(jù)庫(kù)生成全文索引讀取比較費(fèi)時(shí),因此采用基于SQL的全文檢索引擎Sphinx結(jié)合MySQL,以“主索引+增量索引”的模式,大部分的搜索都集中在Sphinx全文索引中,少量數(shù)據(jù)可能需要直接訪問MySQL數(shù)據(jù)庫(kù),這樣可以使應(yīng)用程序更容易實(shí)現(xiàn)專業(yè)化的全文檢索。具體運(yùn)行過(guò)程中通過(guò)Cron設(shè)定計(jì)劃任務(wù),每隔一定的時(shí)間,Sphinx會(huì)從MySQL數(shù)據(jù)庫(kù)生成增量索引,然后執(zhí)行主索引和增量索引的合并,并且在后臺(tái)操作過(guò)程中,一直可以向客戶提供搜索服務(wù)。

      2.2數(shù)據(jù)存儲(chǔ)模型的建立

      目前各種購(gòu)物平臺(tái)和測(cè)評(píng)網(wǎng)站給出的商品信息異常復(fù)雜,每個(gè)網(wǎng)站的頁(yè)面都有自身特定的格式,相同商品在不同網(wǎng)站上也不盡相同,尤其是不同類型的商品在屬性上差異極大,因此, 需要建立統(tǒng)一的數(shù)據(jù)模型存儲(chǔ)數(shù)據(jù),也即通過(guò)多張表能夠描述各種類型商品的基本屬性,而不需要針對(duì)每種商品建立不同的存儲(chǔ)表。本設(shè)計(jì)中構(gòu)建了商品表、商品別名表、品牌表、信息采集表、信息采集元數(shù)據(jù)表、商品路徑表、網(wǎng)站表、店鋪表和商品類別表等一系列數(shù)據(jù)模型。以商品信息表為例,如表2-1所示。

      表2-1 商品表(Commodity)

      字段名 定義類型 特性 說(shuō)明

      id bigint unsigned 自增、主鍵 商品id

      name varchar(255) 非空、全文索引 商品的名字

      brand_id bigint unsigned 外鍵 品牌id

      instance_id varchar(50) 非空 ISBN,ISRC,型號(hào)等

      is_unique bool 非空 是否唯一

      datetime datetime 非空 創(chuàng)建時(shí)間

      instance_id可以是型號(hào)、貨號(hào)、ISBN、ISRC等用來(lái)區(qū)分商品的編號(hào)。大部分商品都會(huì)有型號(hào)(instance_id),因此只要有相同品牌且型號(hào)相同,就可以肯定是同一種商品。brand_id指向brand,指品牌如TCL,也可指出版社或生產(chǎn)廠商。商品的名字需要用Sphinx建立全文索引。

      2.3信息提取流程

      通過(guò)設(shè)置起始網(wǎng)站,然后根據(jù)需要提取并更新網(wǎng)頁(yè)上的商品信息,在信息提取過(guò)程中通過(guò)判別程序進(jìn)行判定,對(duì)已存在商品添加商品別名,不存在的商品添加商品信息,最后更新店鋪信息。

      2.3.1商品信息提取判別

      提取產(chǎn)品的信息包括商品名稱、市場(chǎng)價(jià)、最高價(jià)、促銷價(jià)、促銷描述、銷量描述、評(píng)價(jià)、URL、店鋪、類別、屬性,其中對(duì)ISBN或ISRC、品牌和型號(hào)屬性要特殊處理,由于不同商家在添加商品信息時(shí)可能會(huì)有文字上的差異,提取時(shí)要結(jié)合Sphinx建立的全文搜索引擎仔細(xì)設(shè)計(jì)匹配規(guī)則。如果商品屬性中有ISBN,則可以肯定是圖書,如果有ISRC字樣,則肯定為唱片。這兩種編寫都具有全球唯一性,因此可以設(shè)定商品表中的is_unique字段為真,判斷時(shí)以此編號(hào)為準(zhǔn)。

      在沒有全球唯一編號(hào)的情況下,大部分商品可通過(guò)“品牌+型號(hào)”的方式來(lái)判斷是否為同一商品。其中型號(hào)可能有別名,如“貨號(hào)”等。其余情況,以商品名字來(lái)判斷,由于不同商家會(huì)往商品名稱里加入很多其他信息,通過(guò)名字來(lái)判斷同一商品可靠性較低。

      2.3.2商品信息更新流程

      商品信息更新分為店鋪信息更新和類別更新兩個(gè)部分。店鋪更新是在商品添加成功以后來(lái)處理的,一般每個(gè)商品都會(huì)有默認(rèn)Context(購(gòu)物網(wǎng)站),個(gè)別商品可通過(guò)網(wǎng)頁(yè)找到對(duì)應(yīng)店家,此時(shí)就適用更新店鋪流程,更新店鋪?zhàn)罱K是為了讓此次采集時(shí)的上下文環(huán)境更加明確,以便將來(lái)對(duì)采集數(shù)據(jù)進(jìn)行分類處理。類別更新針對(duì)部分能從商品信息頁(yè)面中獲取的網(wǎng)站而言,為可選功能。

      三、模型構(gòu)建實(shí)踐

      本文基于Heritrix和Sphinx技術(shù)搭建的購(gòu)物搜索引擎在實(shí)踐中把淘寶網(wǎng)、天貓網(wǎng)、卓越亞馬遜、當(dāng)當(dāng)網(wǎng)作為重點(diǎn)爬取對(duì)象,能實(shí)現(xiàn)針對(duì)這些主要購(gòu)物網(wǎng)一般商品的搜索。搜索結(jié)果頁(yè)面如圖2所示。商品比較結(jié)果頁(yè)面如圖3所示。

      四、總結(jié)

      本系統(tǒng)通過(guò)Linux系統(tǒng)的腳本管理技術(shù),將Heritrix網(wǎng)絡(luò)爬蟲技術(shù)、Sphinx的分詞和全文索引的功能相結(jié)合,整合成一個(gè)能篩爬國(guó)內(nèi)主流大型購(gòu)物網(wǎng)站的比較購(gòu)物搜索引擎。本系統(tǒng)還可以進(jìn)一步進(jìn)行完善,如可以對(duì)搜索關(guān)鍵字進(jìn)行按照行為預(yù)先分類,幫助缺少計(jì)算機(jī)基礎(chǔ)的用戶搜索互聯(lián)網(wǎng)內(nèi)容,進(jìn)一步修訂商品信息數(shù)據(jù)存儲(chǔ)表,以更好的兼容越來(lái)越多的業(yè)務(wù)細(xì)分類型購(gòu)物網(wǎng)站,這些都是下一步的發(fā)展方向。

      參 考 文 獻(xiàn)

      [1] Stefan Büttcher, Charles L.A.Clarke, Gordon V.Cormack. 信息檢索:實(shí)現(xiàn)和評(píng)價(jià)搜索引擎[M]. 北京:機(jī)械工業(yè)出版社,2012.1.

      [2] Heritrix User Guide. Heritrix User Guide. Internet Archive.

      [3] 蔣群.中國(guó)比較購(gòu)物網(wǎng)站的調(diào)查分析和發(fā)展建議[J].北京郵電大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2007,(1)

      [4]徐意能, 陳碩. 基于用戶體驗(yàn)的搜索引擎有效性評(píng)估研究[J].人類工效學(xué),2008, 14(3):9-12

      猜你喜歡
      搜索引擎
      Chrome 99 Canary恢復(fù)可移除預(yù)置搜索引擎選項(xiàng)
      網(wǎng)絡(luò)搜索引擎亟待規(guī)范
      Nutch搜索引擎在網(wǎng)絡(luò)輿情管控中的應(yīng)用
      基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
      廣告主與搜索引擎的雙向博弈分析
      基于Lucene搜索引擎的研究
      知識(shí)漫畫
      一種自反饋式元搜索系統(tǒng)的設(shè)計(jì)
      搜索引擎,不止有百度與谷歌
      搜索,也要“深搜熟濾”
      水城县| 霞浦县| 济阳县| 黔江区| 潞城市| 莲花县| 辰溪县| 花莲市| 湖州市| 汨罗市| 滨州市| 山东省| 工布江达县| 达拉特旗| 祁门县| 固阳县| 奇台县| 无棣县| 称多县| 密山市| 桐城市| 高淳县| 临颍县| 广东省| 湘西| 永和县| 威海市| 垣曲县| 蒲城县| 新龙县| 姜堰市| 怀安县| 普兰县| 股票| 通山县| 河西区| 高密市| 怀柔区| 彰化市| 惠来县| 洪雅县|