一種線路類旅游產(chǎn)品的實時比價方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于數(shù)據(jù)處理分析技術(shù)領(lǐng)域,具體涉及一種線路類旅游產(chǎn)品的實時比價方 法。
【背景技術(shù)】
[0002] 旅游產(chǎn)品是旅游業(yè)者通過開發(fā)、利用旅游資源提供給旅游者的旅游吸引物與服務 或其組合。其中,旅游線路產(chǎn)品因其結(jié)構(gòu)完整,服務滿意度高,更為受到大眾的歡迎。旅游 線路產(chǎn)品一般以線路為分類,包括與相關(guān)地點有關(guān)的幾種產(chǎn)品的組合,如交通、景點門票、 住宿、游玩項目等等。近年來,由于網(wǎng)絡技術(shù)的普及,人們習慣于在網(wǎng)絡上搜尋各類信息,目 前各種旅游網(wǎng)站會在頁面上展示各種旅游線路的產(chǎn)品內(nèi)容和價格,便于瀏覽和對比。如果 能夠采用自動手段迅速地獲取同類旅游線路產(chǎn)品數(shù)據(jù)并進行準確地對比,能夠大大提升數(shù) 據(jù)分析和調(diào)整效率,具有重要的意義。但現(xiàn)在的旅游線路產(chǎn)品由于標準化程度較低,產(chǎn)品描 述多為非結(jié)構(gòu)化文本,來自不同數(shù)據(jù)源的產(chǎn)品描述可能千差萬別,因此比價時無法簡單的 根據(jù)線路的名稱判斷兩條旅游線路是否為同一線路,導致無法正確對線路產(chǎn)品進行匹配和 關(guān)聯(lián),進而無法進行正確的比價,因此目前大多數(shù)情況下是通過人工的方法進行線路產(chǎn)品 的匹配,但這種方法無法自動化,重復性勞動過多,效率較低,而且由于旅游產(chǎn)品價格變動 比較頻繁,無法滿足當前快速高效的網(wǎng)絡數(shù)據(jù)應用需求。
【發(fā)明內(nèi)容】
[0003] 為解決上述問題,本發(fā)明公開了一種線路類旅游產(chǎn)品的自動實時比價方法,從線 路行程信息,價格信息,團期信息等多個維度對線路類旅游產(chǎn)品進行相似度計算,獲得相似 線路產(chǎn)品,并實時抓取最新價格,保證比價的準確性和實時性。
[0004] 為了達到上述目的,本發(fā)明提供如下技術(shù)方案: 一種線路類旅游產(chǎn)品的實時比價方法,包括如下步驟: 步驟A,獲取旅游網(wǎng)站上的線路產(chǎn)品并從中抽取旅游相關(guān)數(shù)據(jù),所述旅游相關(guān)數(shù)據(jù)至少 包括出發(fā)地、目的地、行程信息、團期信息、價格信息中的一種或幾種的組合; 步驟B,篩選出與基準產(chǎn)品具有相同出發(fā)地,相同目的地,相同出游天數(shù)的旅游線路產(chǎn) 品作為候選的相似產(chǎn)品,計算行程相似度、團期相似度和價格相似度,并通過以下公式計算 基準旅游產(chǎn)品和候選相似產(chǎn)品的總和相似度: 行程相似度*行程權(quán)重+團期相似度*團期權(quán)重+價格相似度*價格權(quán)重; 所述行程相似度通過以下步驟進行計算:將候選相似線路產(chǎn)品的行程信息作為輸入文 本,對文本進行分詞后對詞語進行詞性標注,將行程中出現(xiàn)的地名的名詞提取出來,利用名 詞和其詞頻組成該線路產(chǎn)品的特征向量,采用以下公式計算行程相似度:
其中,Ap 為線路產(chǎn)品的特征向量; 所述團期相似度=A η B / A U B,其中A和B分別為兩條線路所有團期的集合; 所述價格相似度根據(jù)根據(jù)下式進行計算: price = 1- (abs (averageA - averageB)/averageA+abs(averageA-averageB) / averageB)/2 其中averageA和averageB跟別為線路A和線路B的平均價格; 通過以下公式計算總和相似度: 總和相似度=行程相似度*行程權(quán)重+團期相似度*團期權(quán)重+價格相似度*價格權(quán) 重, 當總和相似度達到或超過設定好的比對閾值時,則認為候選產(chǎn)品與基準產(chǎn)品相同,將 候選產(chǎn)品加入基準產(chǎn)品相同列表; 步驟C,將步驟B中已經(jīng)完成匹配的相同產(chǎn)品列表中的各線路產(chǎn)品鏈接放置在全量抓 取隊列中,采用爬蟲系統(tǒng)持續(xù)依次抓取全量隊列中各線路產(chǎn)品鏈接的價格信息,并計算各 個線路產(chǎn)品的更新周期;定時進行周期性抓取,當周期性抓取時間達到線路產(chǎn)品更新周期 的整數(shù)倍時,則獲取這些線路產(chǎn)品鏈接中的價格信息并存入緩存中;當用戶請求比價時,判 斷緩存是否存在未過期的價格信息,當存在未過期的價格信息時從緩存中獲得頁面產(chǎn)品列 表中各個產(chǎn)品對應的價格,否則實時獲取價格數(shù)據(jù)。
[0005] 進一步的,所述步驟C中進行周期性抓取時將需要進行抓取的線路產(chǎn)品鏈接放入 周期隊列中。
[0006] 進一步的,所述周期隊列為多個,一個周期隊列用于放置同一更新周期的產(chǎn)品鏈 接。
[0007] 進一步的,所述步驟C中進行周期性抓取時計算各個線路產(chǎn)品的更新周期。
[0008] 進一步的,所述實時獲取價格數(shù)據(jù)的過程包括以下過程:將需要實時獲取價格的 線路產(chǎn)品鏈接發(fā)送到實時隊列中,爬蟲系統(tǒng)從實時隊列中取得鏈接后去相應網(wǎng)站抓取價格 信息。
[0009] 進一步的,所述實時獲取的價格數(shù)據(jù)存入緩存中。
[0010] 與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點和有益效果: 本發(fā)明針對線路類旅游產(chǎn)品從多種維度進行相似性比對,比對結(jié)果精確,能夠篩選出 相似度極高的線路產(chǎn)品;且能夠根據(jù)各線路產(chǎn)品的更新周期差異,動態(tài)調(diào)整抓取頻率,在保 證實時抓取產(chǎn)品的最新價格進行比價的基礎(chǔ)上充分節(jié)約服務器和網(wǎng)絡資源。
【附圖說明】
[0011] 圖1為本發(fā)明流程圖; 圖2為主動請求比價流程圖; 圖3為周期性價格抓取流程圖。
【具體實施方式】
[0012] 以下將結(jié)合具體實施例對本發(fā)明提供的技術(shù)方案進行詳細說明,應理解下述具體 實施方式僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍。
[0013] 本發(fā)明旨在以公司自身旅游產(chǎn)品作為比較基準,搜尋其他網(wǎng)站上的相同旅游線路 產(chǎn)品進行比價,并將這些信息在頁面上進行展示,本發(fā)明步驟流程如圖1所示,包括以下步 驟: 步驟A,需要獲取其他不同旅游網(wǎng)站上的線路產(chǎn)品并從中抽取旅游相關(guān)數(shù)據(jù),這里的不 同旅游網(wǎng)站應除去作為比較基準的自身旅游產(chǎn)品所在的公司本網(wǎng)。本例利用開源爬蟲軟件 Nutch將不同旅游網(wǎng)站的所有線路及價格信息爬取到本地,采用XPath或者正則表達式等 技術(shù),將線路產(chǎn)品的各種數(shù)據(jù),抽取出來并且進行格式化,抽取的數(shù)據(jù)至少應包括出發(fā)地、 目的地、行程信息、團期及價格信息、交通信息等。本例抓取了不同旅游網(wǎng)站上的俄羅斯旅 游產(chǎn)品進行比對,抽取出的出發(fā)地包括杭州、南京、上海、北京,目的地為莫斯科、圣彼得堡, 團期包括出發(fā)時間和行程持續(xù)天數(shù),持續(xù)天數(shù)為6至9天不等,交通工具包括飛機、火車,價 格由6000-13000元不等,行程信息通常包括大段的行程內(nèi)容描述,本例抽取行程中的一段 行程信息描述以作示例: "早餐后,漫步于俄羅斯的精神中心一一紅場(克里姆林宮墻外就是紅場,面積9. 1萬 平方米,地面全部由條石鋪成,顯得古老而神圣。紅場15世紀就已出現(xiàn)。當時,沙皇伊凡三 世下令拆除克里姆林宮外圍的木墻,改為市場,從而得名〃托爾格",即〃集市廣場"。1662 年改為〃紅場",古俄語意為〃美麗的廣場"),參觀列寧墓一瞻仰世界偉大的革命導師列 寧,瓦西里大教堂,無名烈士墓、亞歷山大花園(3個景點共約1小時),世界著名的商場一古 姆百貨商店(入內(nèi)游覽約30分鐘)。
[0014] 游覽莫斯科的心臟和歷史發(fā)源地一克里姆林宮(入內(nèi)參觀,游覽時間約1小時),它 由迷人的宮殿、官邸、教堂和珍藏著各種無價之寶的寶庫構(gòu)成,您可以看到15-17世紀的俄 羅斯建筑杰作圣母升天大教堂,報喜大教堂,天使長大教堂,金頂?shù)囊练泊蟮坨姌牵?6世紀 的炮王和18世紀的鐘王。
[0015] 下午乘高鐵赴圣彼得堡,抵達后入住酒店休息。" 步驟B,對于抓取的來自不同網(wǎng)站的線路產(chǎn)品進行相似度計算,基于前序步驟中抽取的 數(shù)據(jù),根據(jù)條件(即作為比較基準的旅游線路