一種互聯(lián)網(wǎng)信息搜索聚合呈現(xiàn)方法
【專利摘要】本發(fā)明公開了一種互聯(lián)網(wǎng)信息搜索聚合呈現(xiàn)方法。本方法為:1)在互聯(lián)網(wǎng)上爬取頁面,并根據(jù)頁面正文內(nèi)容建立對(duì)應(yīng)該網(wǎng)頁的索引;2)根據(jù)輸入的查詢?cè)~檢索聚合內(nèi)容庫,若存在該查詢?cè)~對(duì)應(yīng)的應(yīng)答內(nèi)容,則將其作為搜索結(jié)果返回;若不存在,則進(jìn)行步驟3);3)根據(jù)該查詢?cè)~利用所建索引進(jìn)行網(wǎng)頁檢索,獲得一候選結(jié)果集;4)將該候選結(jié)果集中的網(wǎng)頁正文進(jìn)行內(nèi)容相似性對(duì)比,得到一系列的相似頁面組{S1,S2,…Sk};5)對(duì)每一相似頁面組Si,提取該組內(nèi)所有網(wǎng)頁的同質(zhì)內(nèi)容和差異化內(nèi)容,并將其融合生成一新的頁面Pi;6)將每一組Si及Pi作為應(yīng)答內(nèi)容返回,并保存到所述聚合內(nèi)容庫中。本發(fā)明可直接為用戶提供有價(jià)值的信息服務(wù)。
【專利說明】一種互聯(lián)網(wǎng)信息搜索聚合呈現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種互聯(lián)網(wǎng)信息搜索聚合呈現(xiàn)方法,屬于計(jì)算機(jī)網(wǎng)絡(luò)【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]搜索引擎指自動(dòng)從因特網(wǎng)搜集信息,經(jīng)過一定整理以后,提供給用戶進(jìn)行查詢的系統(tǒng)。因特網(wǎng)上的信息浩瀚萬千,而且毫無秩序,所有的信息像汪洋上的一個(gè)個(gè)小島,網(wǎng)頁鏈接是這些小島之間縱橫交錯(cuò)的橋梁,而搜索引擎,則為用戶繪制一幅一目了然的信息地圖,供用戶隨時(shí)查閱。
[0003]互聯(lián)網(wǎng)用戶冥思苦想,將要搜索的內(nèi)容抽象為“查詢?cè)~”;可是現(xiàn)有搜索引擎卻返回一堆鏈接(其中有相當(dāng)一部分為重復(fù)內(nèi)容或無用信息);用戶想要的結(jié)果均勻的分布在這些鏈接中,搜索引擎成了“信息中轉(zhuǎn)站”,而用戶成了 “分析器”。隨著互聯(lián)網(wǎng)內(nèi)容的不斷膨脹,以上情況變得愈加糟糕,網(wǎng)上可以搜索的網(wǎng)頁變得愈來愈多,而網(wǎng)頁內(nèi)容的質(zhì)量亦變得良莠不齊,沒有保證。同質(zhì)化信息充斥網(wǎng)絡(luò),導(dǎo)致當(dāng)前的搜索引擎的檢索結(jié)果產(chǎn)生大量的重復(fù)信息和雜訊,用戶無法快速定位到原本需要的查詢結(jié)果?;ヂ?lián)網(wǎng)上典型的同質(zhì)信息,比如:新聞的轉(zhuǎn)載,以及社交網(wǎng)絡(luò)微博的轉(zhuǎn)發(fā)等。
[0004]針對(duì)現(xiàn)有搜索引擎的上述缺陷,本專利設(shè)計(jì)了一種將同質(zhì)或相似性高的搜索結(jié)果聚合呈現(xiàn)的方法,以期望從不同來源聚合信息(即幫用戶分析),為用戶提供有價(jià)值的信息服務(wù),而不是作為“信息中轉(zhuǎn)站”。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供了一種新的互聯(lián)網(wǎng)搜索信息集成與呈現(xiàn)方法,將同質(zhì)或相似性高的網(wǎng)頁核心信息進(jìn)行集成聚合,為用戶提供有價(jià)值信息服務(wù)。發(fā)明目的是為用戶提供有價(jià)值的聚合信息,而不像現(xiàn)有的搜索引擎僅僅提供包含信息的連接列表。
[0006]本發(fā)明的技術(shù)方案為:
[0007]—種互聯(lián)網(wǎng)信息搜索聚合呈現(xiàn)方法,其步驟為:
[0008]I)利用搜索引擎在互聯(lián)網(wǎng)上爬取頁面,對(duì)爬到的網(wǎng)頁使用基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取算法做正文內(nèi)容提取,并根據(jù)正文內(nèi)容建立對(duì)應(yīng)該網(wǎng)頁的索引;
[0009]2)根據(jù)輸入的查詢?cè)~檢索聚合內(nèi)容庫,若存在該查詢?cè)~對(duì)應(yīng)的應(yīng)答內(nèi)容,則將其作為搜索結(jié)果返回;若不存在,則進(jìn)行步驟3);
[0010]3)根據(jù)該查詢?cè)~利用所建索引進(jìn)行網(wǎng)頁檢索,獲得一候選結(jié)果集;
[0011]4)將該候選結(jié)果集中的網(wǎng)頁正文進(jìn)行內(nèi)容相似性對(duì)比,將同質(zhì)或內(nèi)容相似性大于設(shè)定閾值的頁面作為一組,得到一系列的相似頁面組{Sl,S2,一Sk};
[0012]5)對(duì)每一相似頁面組Si,提取該組內(nèi)所有網(wǎng)頁的同質(zhì)內(nèi)容和差異化內(nèi)容,并將其融合生成一新的頁面Pi ;
[0013]6)將每一相似頁面組Si及其對(duì)應(yīng)頁面Pi作為該查詢?cè)~對(duì)應(yīng)的應(yīng)答內(nèi)容返回,并且將該查詢?cè)~及其對(duì)應(yīng)的應(yīng)答內(nèi)容保存到所述聚合內(nèi)容庫中。[0014]進(jìn)一步的,所述對(duì)爬到的網(wǎng)頁做正文內(nèi)容提取的方法為:
[0015]21)將所爬取的網(wǎng)頁集中一網(wǎng)頁作為目標(biāo)網(wǎng)頁,從該網(wǎng)頁集中搜尋一與該目標(biāo)網(wǎng)頁URL相似度最高網(wǎng)頁作為參考網(wǎng)頁,然后將這兩個(gè)頁面轉(zhuǎn)化成相應(yīng)的DOM樹;
[0016]22)刪除目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中相同的節(jié)點(diǎn);
[0017]23)根據(jù)步驟22)處理后的目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹,確定目標(biāo)網(wǎng)頁和參考網(wǎng)頁的核心內(nèi)容路徑,進(jìn)行網(wǎng)頁正文的提取。
[0018]進(jìn)一步的,所述刪除目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中相同的節(jié)點(diǎn)的方法為:
[0019]31)從目標(biāo)網(wǎng)頁DOM樹中的第一層節(jié)點(diǎn)開始,對(duì)于每一層節(jié)點(diǎn),在參考網(wǎng)頁DOM樹中尋找準(zhǔn)相同節(jié)點(diǎn):即標(biāo)簽相同,并且屬性鍵值對(duì)也相同;
[0020]32)將準(zhǔn)相同節(jié)點(diǎn)看成文本行進(jìn)行逐行的字符串對(duì)比;如果兩個(gè)節(jié)點(diǎn)的對(duì)應(yīng)文本行完全相同,則這兩個(gè)節(jié)點(diǎn)完全相同,在兩顆DOM樹中分別刪除該節(jié)點(diǎn);如果兩個(gè)節(jié)點(diǎn)對(duì)應(yīng)的文本行不同,則逐層遞歸地對(duì)該節(jié)點(diǎn)的子節(jié)點(diǎn)們進(jìn)行比對(duì),查找相同節(jié)點(diǎn)并在兩顆DOM樹中分別刪除,直到目標(biāo)網(wǎng)頁DOM樹中不再有與參考網(wǎng)頁DOM樹中相同的節(jié)點(diǎn)。
[0021]進(jìn)一步的,所述核心內(nèi)容路徑的確定方法為:計(jì)算目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中每一節(jié)點(diǎn)的文本數(shù),如果某個(gè)節(jié)點(diǎn)的文本數(shù)小于設(shè)定的文本數(shù)閾值,則刪除該節(jié)點(diǎn);提取目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中剩余的包含文本的節(jié)點(diǎn)作為相應(yīng)DOM樹對(duì)應(yīng)網(wǎng)頁的核心內(nèi)容路徑。
[0022]進(jìn)一步的,確定所述核心內(nèi)容路徑之前,對(duì)目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹進(jìn)行雜質(zhì)內(nèi)容刪除處理,其方法:計(jì)算目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中每一節(jié)點(diǎn)包含鏈接元素<a>的節(jié)點(diǎn)的鏈接文本密度,如果大于設(shè)定密度閾值,則刪除該節(jié)點(diǎn)。
[0023]進(jìn)一步的,以網(wǎng)頁正文的段落為單元,對(duì)每一相似頁面組內(nèi)所有網(wǎng)頁進(jìn)行同質(zhì)內(nèi)容的提取和差異化內(nèi)容的提取。
[0024]進(jìn)一步的,生成所述頁面Pi的方法為:將同質(zhì)內(nèi)容和差異化內(nèi)容融合為一新的文檔,其中同質(zhì)內(nèi)容字體加粗或加黑,且同質(zhì)內(nèi)容和差異性內(nèi)容以不同顏色呈現(xiàn);然后將對(duì)應(yīng)相似頁面組內(nèi)所有網(wǎng)頁的原始地址附在該文檔中,并為其動(dòng)態(tài)建立一個(gè)新的網(wǎng)址URLi,生成所述頁面Pi。
[0025]進(jìn)一步的,生成所述相似頁面組的方法為:兩兩遍歷所述候選結(jié)果集中的網(wǎng)頁,計(jì)算標(biāo)題的字符串匹配度T、網(wǎng)頁有效內(nèi)容長度的匹配度L和頁面出現(xiàn)頻率最高的N個(gè)關(guān)鍵詞的重疊度F,然后根據(jù)S = alpha*T+beta*L+gamma*F得到兩個(gè)頁面的相似性S,將相似性S大于設(shè)定閾值的頁面作為一組;其中,alpha, beta和ga_a的取值均在[0,I]區(qū)間,且alpha+beta+gamma = I。
[0026]進(jìn)一步的,首先從所述候選結(jié)果集中尋找網(wǎng)頁的同質(zhì)化信息,根據(jù)同質(zhì)化信息度所述候選結(jié)果集中的網(wǎng)頁進(jìn)行聚類,然后兩兩遍歷每一類中的網(wǎng)頁,計(jì)算頁面的相似性。
[0027]進(jìn)一步的,將查詢?cè)~以及最終形成的聚合結(jié)果保存到一數(shù)據(jù)庫中并建立索引;當(dāng)輸入新的查詢?cè)~時(shí),根據(jù)該索引檢索出相對(duì)應(yīng)的聚合結(jié)果。
[0028]與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn):
[0029]I) “基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法思路直觀,啟發(fā)式規(guī)則簡單通用,執(zhí)行效率高,運(yùn)算速度快,對(duì)于高度模板化的網(wǎng)頁內(nèi)容提取效果非常好。
[0030]2)相比于使用純統(tǒng)計(jì)規(guī)則和純機(jī)器學(xué)習(xí)的方法,該“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法不涉及樣本標(biāo)注和學(xué)習(xí)算法的收斂和周期問題,并且不對(duì)網(wǎng)頁內(nèi)容語言,網(wǎng)頁設(shè)計(jì)風(fēng)格和網(wǎng)頁模板樣式類型做任何假設(shè),在大大提高了算法的效率、減少了人力成本的同時(shí),對(duì)于現(xiàn)代網(wǎng)站網(wǎng)頁的核心內(nèi)容提取有良好的通用性。
[0031]3)對(duì)于基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取的算法中的雜質(zhì)內(nèi)容刪除和核心內(nèi)容路徑提取算法可以根據(jù)需要和可拓展性問題不一而足。算法描述中僅僅給出了一個(gè)參考,在實(shí)際應(yīng)用中可以根據(jù)不同的情況使用合適的算法(包括統(tǒng)計(jì)算法,機(jī)器學(xué)習(xí)算法等等)或直接略去此步驟。對(duì)于基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取算法中的參考網(wǎng)頁的獲取方法也可以根據(jù)實(shí)際應(yīng)用設(shè)計(jì)靈活多變的方法,而不局限于當(dāng)前所提出的策略。
[0032]4)相比于普通網(wǎng)頁,我們?cè)O(shè)計(jì)的發(fā)明使用戶得到的查詢結(jié)果更具有針對(duì)性,內(nèi)容的冗余度比用戶自己搜索更小,查詢結(jié)果也因?yàn)槿サ袅藦V告等無用信息而更加精確和干凈,對(duì)于閱讀需求提供了更加多樣化的內(nèi)容呈現(xiàn),為有目的性的閱讀提供更便捷的拓展補(bǔ)充。
[0033]總的來說,本發(fā)明設(shè)計(jì)了一種將同質(zhì)或相似性高的搜索結(jié)果聚合呈現(xiàn)的方法,以期望從不同來源聚合信息(即幫用戶分析),直接為用戶提供有價(jià)值的信息服務(wù),該發(fā)明改進(jìn)現(xiàn)有搜索引擎作為“信息中轉(zhuǎn)站”的缺陷。
【專利附圖】
【附圖說明】
[0034]圖1為本發(fā)明的方法流程圖。
【具體實(shí)施方式】
[0035]本部分詳細(xì)介紹發(fā)明的具體技術(shù)方案。
[0036]對(duì)于用戶的查詢,系統(tǒng)首先在聚合內(nèi)容庫中查找是否已有被緩存的結(jié)果,如果有,則直接按照信息層次化的形式將聚合內(nèi)容響應(yīng),并在用戶頁面上進(jìn)行呈現(xiàn);如果聚合內(nèi)容庫中沒有相關(guān)內(nèi)容,則通過用戶的查詢?cè)陧撁鎺熘兴饕嚓P(guān)頁面,進(jìn)行相似性比對(duì)以及聚合操作,形成響應(yīng)數(shù)據(jù)源,按照信息層次化的方式將結(jié)果數(shù)據(jù)進(jìn)行呈現(xiàn)整理,最后將其呈現(xiàn)結(jié)果展示給用戶,并在聚合內(nèi)容庫中對(duì)該內(nèi)容進(jìn)行緩存,以便快速響應(yīng)相同查詢。網(wǎng)頁索引庫由網(wǎng)絡(luò)爬蟲對(duì)互聯(lián)網(wǎng)上的頁面進(jìn)行抓取,對(duì)網(wǎng)頁內(nèi)容進(jìn)行提取、建庫,并建立相關(guān)索引。
[0037]本發(fā)明的方法流程如圖1所示:
[0038]1.利用搜索引擎在互聯(lián)網(wǎng)上爬取頁面,對(duì)爬到的網(wǎng)頁做正文內(nèi)容提取,并根據(jù)正文內(nèi)容建立對(duì)應(yīng)該網(wǎng)頁的索引。
[0039]通過“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法進(jìn)行核心提取:去掉網(wǎng)頁中與閱讀無關(guān)的廣告鏈接,網(wǎng)站導(dǎo)航欄,網(wǎng)站版權(quán)等信息,使得網(wǎng)頁內(nèi)容的獲取更精準(zhǔn),更簡潔;算法歸納出的網(wǎng)頁模板可以用于快速的將同一網(wǎng)站同一專題的網(wǎng)頁內(nèi)容進(jìn)行內(nèi)容提取,加速基礎(chǔ)資源數(shù)據(jù)的處理過程;“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”如下:
[0040]I)從待處理的目標(biāo)網(wǎng)頁的源代碼中搜尋相似度最高的URL,獲得該URL所對(duì)應(yīng)的參考網(wǎng)頁頁面,并將這兩個(gè)頁面轉(zhuǎn)化成相應(yīng)的DOM樹以進(jìn)行后續(xù)處理。由于搜索引擎會(huì)按照一些當(dāng)今主流的算法來抓取網(wǎng)頁,這些網(wǎng)頁中肯定會(huì)存在URL相似的網(wǎng)頁,這些網(wǎng)頁可以兩兩相互配對(duì)來進(jìn)行網(wǎng)頁正文提取操作,同步完成網(wǎng)頁正文提取,并根據(jù)提取的正文建立內(nèi)容索引;即優(yōu)先抓取URL相似度滿足一定條件的網(wǎng)頁;對(duì)于我們要從中提取正文的網(wǎng)頁稱為算法的目標(biāo)網(wǎng)頁,與該目標(biāo)網(wǎng)頁URL相似度達(dá)到一定程度的網(wǎng)頁,會(huì)被用來配合該目標(biāo)網(wǎng)頁的正文提取,因此URL相似的網(wǎng)頁稱為算法的參考網(wǎng)頁,由于我們的算法可以同時(shí)提取出目標(biāo)網(wǎng)頁與參考網(wǎng)頁的正文內(nèi)容,因此目標(biāo)網(wǎng)頁與參考網(wǎng)頁是一個(gè)相對(duì)的概念,他們互稱為目標(biāo)網(wǎng)頁和參考網(wǎng)頁;對(duì)于N個(gè)(N〉= 2)URL相似度滿足一定條件的DOM樹,它們之間就可以完全完成正文提取,且效率是逐個(gè)DOM樹進(jìn)行提取的2倍;對(duì)于找不到滿足URL相似度的DOM樹,我們可以在其所屬網(wǎng)站的同一專題下尋找次一級(jí)的相似URL網(wǎng)頁作為參考網(wǎng)頁進(jìn)行正文提取,其所產(chǎn)生的噪音信息粒度不足以影響索引的建立和聚合的精確度。這里給出一個(gè)URL相似度計(jì)算的方法:
[0041]待判定的URLa:
[0042]protocol 1://domainname l/pl/p2/p3/p4/f 1.ext ;p = 0 ? q = l&w =2#fragmentl ;
[0043]待判定的URLb:
[0044]protocol2://domainname2/pl/p2/f2.ext ;p = I ? q = 2&w = 3#fragment ;
[0045]相似度值命名為similarity = 0 ;
[0046]首先比較網(wǎng)絡(luò)協(xié)議部分,即protocol I和protocol〗,如果不同,貝丨J similarity=-1 ;退出比較;
[0047]如果相同,則比較主機(jī)部分,即domainname I和domainname 2,如果不同,貝丨Jsimilarity = —I 比
[0048]如果相同,則比較路徑部分,即/pl/p2/p3/p4/fL ext ;p = O 和 /pl/p2/f2.ext ;P = I部分,從根目錄名開始,逐層比較直到文件名與路徑參數(shù),對(duì)于URLa的路徑層數(shù)為Ia(本例Ia為5),對(duì)于URLb的路徑層數(shù)為Ib (本例Ib為3),記兩個(gè)路徑的相同部分層數(shù)為cl(本例為2),在比較過程中如果發(fā)現(xiàn)不相同(比如,在本例中第一次不相同將發(fā)生在p3 和 f2.ext ;p = I 的比較),則 similarity = max (la, lb) -cl,在本例中 similarity = 3 ;如果similarity不為0,則比較結(jié)束,similarity的值即為比較結(jié)果值;如果similarity為0,即他們的路徑部分完全相同,則在去比較它們的查詢部分,即比較q = 1&W = 2和q =2&w = 3中的鍵值對(duì),如果完全相同,則similarity = O,退出比較;如果不完全相同,則記Ia為URLa的查詢部分的鍵值對(duì)個(gè)數(shù),Ib為URLb的查詢部分的鍵值對(duì)個(gè)數(shù),cl為兩個(gè)URL完全相同的查詢鍵值對(duì)個(gè)數(shù),則similarity = max (la, lb)_cl,退出比較。
[0049]從上面的計(jì)算可以看出真正有利于正文提取的參考網(wǎng)頁與目標(biāo)網(wǎng)頁之間的URL相似度為I ;即通過設(shè)置的閾值,將要進(jìn)行正文提取的網(wǎng)頁尋找一個(gè)與它在URL上滿足一定相似條件的網(wǎng)頁,然后這兩個(gè)網(wǎng)頁作為一個(gè)“目標(biāo)網(wǎng)頁,參考網(wǎng)頁”對(duì)來一并進(jìn)行正文提取。
[0050]2)對(duì)目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹進(jìn)行節(jié)點(diǎn)預(yù)處理,如下:
[0051]2-1)從目標(biāo)網(wǎng)頁和參考網(wǎng)頁中刪除人機(jī)交互節(jié)點(diǎn),如〈form〉,〈fieldset〉,〈legend>, <input>, <select>, <menu>, <button>, <applet>, <object> 等。
[0052]2-2)從目標(biāo)網(wǎng)頁和參考網(wǎng)頁中刪除與網(wǎng)頁核心內(nèi)容無關(guān)的輔助型節(jié)點(diǎn),如〈style>, <script>, <noscript>, <link>, <meta> 等。
[0053]2-3)從目標(biāo)網(wǎng)頁和參考網(wǎng)頁中刪除在視覺上不可見的節(jié)點(diǎn),如[style=,,display: none ;,,],[style visibility: hidden ;,,]等。
[0054]2-4)從目標(biāo)網(wǎng)頁和參考網(wǎng)頁中刪除空節(jié)點(diǎn),如〈xxx>〈/xxx>,<xxx/>等形式的節(jié)點(diǎn)。
[0055] 2-5)從目標(biāo)網(wǎng)頁和參考網(wǎng)頁中刪除被注釋的代碼和其他相關(guān)注釋內(nèi)容。
[0056]3)模板節(jié)點(diǎn)處理:將目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中的各個(gè)節(jié)點(diǎn)以文本的形式的進(jìn)行相同節(jié)點(diǎn)刪除算法(模板節(jié)點(diǎn)刪除),“刪除算法”如下:
[0057]3-1)以逐層遍歷的方式獲得目標(biāo)網(wǎng)頁DOM樹中的第一層節(jié)點(diǎn),或者依次將〈body〉的子節(jié)點(diǎn)壓入節(jié)點(diǎn)隊(duì)列,即獲取〈body〉節(jié)點(diǎn)的子節(jié)點(diǎn),以便進(jìn)行接下來的深度優(yōu)先遞歸遍歷;
[0058]3-2)對(duì)于在3.1中的每一個(gè)節(jié)點(diǎn)在參考網(wǎng)頁的DOM樹中尋找準(zhǔn)相同節(jié)點(diǎn):即標(biāo)簽相同,并且屬性鍵值對(duì)也相同;比如對(duì)于節(jié)點(diǎn)〈div id = ” idl” class = ” clsl”attr= ”attrl”>…</div>來說,如果有一節(jié)點(diǎn)在標(biāo)簽名(div),屬性鍵值對(duì)(id =’’idl”,class= ”Clsl”,attr =”attrl”等)上完全相同,則認(rèn)為這兩個(gè)節(jié)點(diǎn)的標(biāo)簽相同,對(duì)于節(jié)點(diǎn)中的文本內(nèi)容以及子節(jié)點(diǎn)的標(biāo)簽信息和內(nèi)容,將在后續(xù)進(jìn)行比較。
[0059]3-3)將相同節(jié)點(diǎn)看成文本行進(jìn)行逐行的字符串對(duì)比;如果兩個(gè)節(jié)點(diǎn)的對(duì)應(yīng)文本行完全相同,則這兩個(gè)節(jié)點(diǎn)完全相同,那么可以在兩顆DOM樹中分別刪除該節(jié)點(diǎn);如果兩個(gè)節(jié)點(diǎn)對(duì)應(yīng)的文本行出現(xiàn)不同(說明這兩個(gè)節(jié)點(diǎn)的子節(jié)點(diǎn)群不同,可能是數(shù)量不同,也可能是標(biāo)簽類型和屬性鍵值對(duì)有差異),則需要遞歸地對(duì)該節(jié)點(diǎn)的子節(jié)點(diǎn)們進(jìn)行逐層的“刪除算法”,即回到3.1,直到目標(biāo)網(wǎng)頁DOM樹中所有的節(jié)點(diǎn)進(jìn)行過了“刪除算法”,并且不再有相同的節(jié)點(diǎn)的存在。(在兩個(gè)不同網(wǎng)頁的DOM樹中,完全相同的節(jié)點(diǎn)包含核心內(nèi)容的可能性非常小,因此這些相同節(jié)點(diǎn)基本是屬于網(wǎng)頁中共有的導(dǎo)航,版權(quán),廣告,全局熱點(diǎn)推薦等等噪音信息,剩余的節(jié)點(diǎn)中包含的則主要是網(wǎng)頁的核心內(nèi)容)。
[0060]4)雜質(zhì)內(nèi)容刪除及核心內(nèi)容路徑提取:
[0061]4-1)雜質(zhì)內(nèi)容刪除:該環(huán)節(jié)主要考慮對(duì)“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法結(jié)果中沒有去掉的一些異質(zhì)但又非核心內(nèi)容的一些數(shù)據(jù)信息,不限于固定算法;這一步驟并不是必須的,對(duì)于內(nèi)容聚合來說,“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法的結(jié)果精度已經(jīng)足夠了,為了以后更精確的處理結(jié)果,可以在一步中加入適當(dāng)處理,增加系統(tǒng)可拓展性。一種可能的處理方法是:
[0062]考察包含鏈接元素<a>的節(jié)點(diǎn)的鏈接文本密度,即(鏈接元素所包含的文本數(shù))/(鏈接元素父節(jié)點(diǎn)所包含的總文本數(shù)),該指標(biāo)的結(jié)果區(qū)間為[0,I],如果該指標(biāo)大于某個(gè)閾值,則可以認(rèn)為該節(jié)點(diǎn)(鏈接元素的父節(jié)點(diǎn))與網(wǎng)頁核心正文的相關(guān)性不大,從而可以刪除該節(jié)點(diǎn)。
[0063]4-2)核心內(nèi)容路徑提取:該步驟為了以后更大規(guī)模的拓展和效率提升而考慮,對(duì)于核心內(nèi)容節(jié)點(diǎn)在DOM中的定位,可以大大縮小“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法的作用數(shù)據(jù)域,從而提高算法的效率,這在現(xiàn)階段也并不是必須的。一種可能的處理方法是:
[0064]根據(jù)整個(gè)DOM樹的節(jié)點(diǎn)文本數(shù)特性設(shè)置閾值(節(jié)點(diǎn)的文本特性包括節(jié)點(diǎn)中的文本個(gè)數(shù),節(jié)點(diǎn)中包含在鏈接元素<a>的文本個(gè)數(shù)等,可以通過一些樣本網(wǎng)頁利用統(tǒng)計(jì)學(xué)習(xí)的方法來總結(jié)出包含正文內(nèi)容的最小節(jié)點(diǎn)的文本特征,來推測出一個(gè)閾值,此閾值起到一定的區(qū)分核心內(nèi)容節(jié)點(diǎn)的作用,來排除其他具有明顯非正文特征的節(jié)點(diǎn)),然后根據(jù)該閾值刪除文本特征不明顯的節(jié)點(diǎn)(文本數(shù)小于閾值),保留的包含文本的節(jié)點(diǎn)最終被認(rèn)為是網(wǎng)頁正文的核心內(nèi)容,提取這些節(jié)點(diǎn)在整個(gè)DOM樹中的節(jié)點(diǎn)路徑作為該網(wǎng)頁的正文內(nèi)容模板,便于后續(xù)同一模板網(wǎng)頁的正文提取(在定位了核心內(nèi)容所在的最小節(jié)點(diǎn)后,依次記錄該節(jié)點(diǎn)到〈body〉節(jié)點(diǎn)的路徑上的所有節(jié)點(diǎn),這些節(jié)點(diǎn)即構(gòu)成了從根節(jié)點(diǎn)〈body〉定位到核心內(nèi)容節(jié)點(diǎn)的路徑,該路徑提取可方便同具有同一內(nèi)在模板的網(wǎng)頁進(jìn)行正文提取,因?yàn)椤盎趦?nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法的作用域從整個(gè)網(wǎng)頁DOM樹中的節(jié)點(diǎn)縮小到只包含核心內(nèi)容的最小節(jié)點(diǎn)上了)。
[0065]由于模板節(jié)點(diǎn)的處理,本發(fā)明將遞歸地遍歷目標(biāo)網(wǎng)頁DOM樹,精簡DOM樹結(jié)構(gòu),并從中去除影響模板節(jié)點(diǎn)處理的元素,提高算法精度和運(yùn)算效率。
[0066]同一網(wǎng)站上同一頻道或同一專題下網(wǎng)頁DOM樹結(jié)構(gòu),由于設(shè)計(jì)風(fēng)格和開發(fā)效率的考慮往往使用同一模板,以及相同的樣式和組件腳本,對(duì)于這類網(wǎng)站的核心內(nèi)容提取,他們的內(nèi)容在DOM樹中的布局往往有跡可循(這類網(wǎng)頁在同屬于一個(gè)網(wǎng)站的時(shí)候,他們的頁面URL —般具有極高的相似性)。對(duì)于全局廣告,熱點(diǎn)內(nèi)容推薦,站點(diǎn)導(dǎo)航,站點(diǎn)版權(quán)信息等內(nèi)容在同一模板的DOM樹中的節(jié)點(diǎn)上幾乎完全一樣,而主題相關(guān)的網(wǎng)頁核心內(nèi)容則因?yàn)閮?nèi)容的不同而在DOM樹的層次和節(jié)點(diǎn)內(nèi)容上有所差異,因此對(duì)于網(wǎng)頁核心內(nèi)容無關(guān)的元素的去除可以利用DOM樹比對(duì)來完成。對(duì)于標(biāo)簽,屬性,以及內(nèi)容完全一樣的節(jié)點(diǎn)(該規(guī)則必需遞歸地被該節(jié)點(diǎn)的所有子節(jié)點(diǎn)所滿足),它們與網(wǎng)頁核心內(nèi)容無關(guān)的可能性更大,因此,可以刪去。算法執(zhí)行完畢后剩下的內(nèi)容即為與網(wǎng)頁內(nèi)容相關(guān)的特有的內(nèi)容,以及少量與時(shí)間、用戶統(tǒng)計(jì)等有關(guān)的各異信息。這對(duì)于網(wǎng)頁核心內(nèi)容的提取已經(jīng)大大提高了準(zhǔn)確性。
[0067]通過“基于內(nèi)在模板的網(wǎng)頁正文內(nèi)容提取”算法處理后的頁面內(nèi)容將被用來入庫并建立索引,以便根據(jù)用戶的查詢來構(gòu)建結(jié)果頁面集(ResultSet)。我們把廣泛抓取到的頁面做正文提取處理,然后根據(jù)提取出來的正文為這些頁面建立索引,用以根據(jù)索引檢索到這些頁面。用戶的查詢將會(huì)在所建立的索引中進(jìn)行尋找,檢索出相對(duì)應(yīng)的網(wǎng)頁,這些頁面構(gòu)成查詢結(jié)果頁面集,而這些頁面集中的頁面的正文內(nèi)容,將被用來進(jìn)行聚合算法,以形成最后的處理結(jié)果。聚合結(jié)果將被緩存到聚合庫中,便于下一次用戶相同查詢的結(jié)果快速響應(yīng)。
[0068]2.系統(tǒng)接收用戶提交的查詢?cè)~后,首先檢查該查詢?cè)~的應(yīng)答內(nèi)容是否存在于聚合內(nèi)容庫(ContentDB)中,若存在,則直接返回已聚合的結(jié)果集作為搜索結(jié)果,結(jié)束流程;若不存在,進(jìn)入步驟3;
[0069]3.根據(jù)用戶的查詢?cè)~,通過檢索最新的索引庫(普通網(wǎng)頁的索引庫和實(shí)時(shí)性要求高的網(wǎng)頁(比如新聞)索引庫,其更新頻率存在差異),獲得候選結(jié)果集(ResultSet)。
[0070]4.通過對(duì)ResultSet中的頁面進(jìn)行內(nèi)容相似性比對(duì),確定同質(zhì)或內(nèi)容相似性高的頁面,形成一系列的相似頁面組{Sl,S2,一Sk}。本發(fā)明不限定特定的網(wǎng)頁內(nèi)容相似性判定方法,一種可行的候選算法如下:
[0071]綜合考慮網(wǎng)頁標(biāo)題進(jìn)行字符串匹配度(T),網(wǎng)頁有效內(nèi)容(去掉HTML標(biāo)簽后的信息)長度的匹配度(L),和頁面出現(xiàn)頻率最高的N個(gè)關(guān)鍵詞的重疊度(F),最終兩個(gè)頁面的相似性 S = alpha*T+beta*L+gamma*F,其中,alpha, beta 和 gamma 的取值均在[0,I]區(qū)間,且alpha+beta+gamma = I,其具體取值將考慮候選結(jié)果集中的頁面的資源類型:比如,考慮頁面以文本為主、還是以圖片或視頻為主等,對(duì)于圖片集和視頻類頁面,alpha的取值將更大一些。
[0072]另外,考慮到互聯(lián)網(wǎng)上網(wǎng)頁數(shù)目巨大,如果對(duì)所有頁面都互相對(duì)比,將會(huì)耗費(fèi)大量時(shí)間和服務(wù)器資源。由于同質(zhì)化信息容易被轉(zhuǎn)載的會(huì)集中于某些領(lǐng)域,如,新聞?lì)惥W(wǎng)站的內(nèi)容(鳳凰網(wǎng),網(wǎng)易新聞等);百科類網(wǎng)站的內(nèi)容(百度百科,果殼網(wǎng));某些專業(yè)領(lǐng)域的博客(CSDN,新浪博客)等。根據(jù)八二原則,這些少量的重要信息會(huì)占有絕大多數(shù)的搜索量,所以,以這些信息為標(biāo)桿,從ResultSet中優(yōu)先尋找這些信息的同質(zhì)化信息(因?yàn)橐恍┹^熱門內(nèi)容,容易引起更多的搜索和轉(zhuǎn)載,而且這些內(nèi)容在新聞,百科,博客等類型的網(wǎng)站中較常出現(xiàn),因此,提前對(duì)這類關(guān)鍵字所索引的頁面內(nèi)容做聚合,會(huì)提高對(duì)用戶查詢進(jìn)行響應(yīng)的速度;而在分類后的候選結(jié)果集中,優(yōu)先對(duì)新聞,百科,博客等類型的頁面做聚合,也會(huì)提高聚合效率。這些熱門信息,可以從類似百度指數(shù)這樣的數(shù)據(jù)中獲得;同質(zhì)化信息的獲取依然可以使用步驟4中提到的算法進(jìn)行同質(zhì)化判定。),再去聚合,這樣會(huì)急劇減少比較的時(shí)間,可以做到更實(shí)時(shí)、更高效。
[0073]5.對(duì)步驟4生成的相似頁面組Si JfSi內(nèi)所有網(wǎng)頁的內(nèi)容進(jìn)行集成:該環(huán)節(jié)首先提取內(nèi)容相似性較高的部分,并進(jìn)一步提取內(nèi)容差異性更高的部分,提取方法可以使用步驟4中的判別頁面相似性的算法,算法的作用域?yàn)檎牡母鱾€(gè)段落,而非整篇文檔;這樣在更精確的粒度上對(duì)正文內(nèi)容中的相似性內(nèi)容和差異性內(nèi)容進(jìn)行了區(qū)分;將同質(zhì)內(nèi)容和差異化內(nèi)容融合為一新的文檔Pi,其中同質(zhì)內(nèi)容字體加粗或加黑等(可以進(jìn)一步在同質(zhì)內(nèi)容旁邊加注釋,提示來自不同的K個(gè)頁面等),且同質(zhì)內(nèi)容和差異性內(nèi)容以不同顏色呈現(xiàn);另夕卜,Si內(nèi)所有網(wǎng)頁的原始地址(URL)也附在Pi文檔中,進(jìn)一步為Pi動(dòng)態(tài)建立一個(gè)新的網(wǎng)址URLi,供用戶訪問。
[0074]6.基于步驟4生成的頁面和URL生成返回結(jié)果頁面給用戶,以頁面Pi (即步驟4生成的代表各個(gè)頁面組的新頁面)為例:選取Pi的前M個(gè)字符,并將其與URLi —起作為第i個(gè)結(jié)果。在返回頁面中依次展示上述N個(gè)結(jié)果。在返回結(jié)果頁中,Pi文檔項(xiàng)要和通用搜索引擎的搜索結(jié)果能區(qū)分出來,可以通過設(shè)置特別的底色等方式加以區(qū)分。同時(shí),將上述內(nèi)容存入聚合內(nèi)容庫(ContentDB),對(duì)應(yīng)于該查詢?cè)~的結(jié)果,并定期更新,以應(yīng)對(duì)用戶的重復(fù)查詢。
[0075]該搜索聚合與呈現(xiàn)系統(tǒng)與現(xiàn)有搜索引擎最大的不同體現(xiàn)在:現(xiàn)有搜索引擎結(jié)果呈現(xiàn)為一個(gè)個(gè)獨(dú)立的摘要信息和原網(wǎng)頁超鏈接,即信息中轉(zhuǎn)站的功能;本發(fā)明系統(tǒng)呈現(xiàn)的搜索結(jié)果是基于網(wǎng)頁內(nèi)容集成后的聚合信息,以及這些信息背后的來源鏈接列表。
【權(quán)利要求】
1.一種互聯(lián)網(wǎng)信息搜索聚合呈現(xiàn)方法,其步驟為: 1)利用搜索引擎在互聯(lián)網(wǎng)上爬取頁面,對(duì)爬到的網(wǎng)頁做正文內(nèi)容提取,并根據(jù)正文內(nèi)容建立對(duì)應(yīng)該網(wǎng)頁的索引; 2)根據(jù)輸入的查詢?cè)~檢索聚合內(nèi)容庫,若存在該查詢?cè)~對(duì)應(yīng)的應(yīng)答內(nèi)容,則將其作為搜索結(jié)果返回;若不存在,則進(jìn)行步驟3); 3)根據(jù)該查詢?cè)~利用所建索引進(jìn)行網(wǎng)頁檢索,獲得一候選結(jié)果集; 4)將該候選結(jié)果集中的網(wǎng)頁正文進(jìn)行內(nèi)容相似性對(duì)比,將同質(zhì)或內(nèi)容相似性大于設(shè)定閾值的頁面作為一組,得到一系列的相似頁面組{Sl,S2,一Sk}; 5)對(duì)每一相似頁面組Si,提取該組內(nèi)所有網(wǎng)頁的同質(zhì)內(nèi)容和差異化內(nèi)容,并將其融合生成一新的頁面Pi ; 6)將每一相似頁面組Si及其對(duì)應(yīng)頁面Pi作為該查詢?cè)~對(duì)應(yīng)的應(yīng)答內(nèi)容返回,并且將該查詢?cè)~及其對(duì)應(yīng)的應(yīng)答內(nèi)容保存到所述聚合內(nèi)容庫中。
2.如權(quán)利要求1所述的方法,其特征在于所述對(duì)爬到的網(wǎng)頁做正文內(nèi)容提取的方法為: 21)將所爬取的網(wǎng)頁集中一網(wǎng)頁作為目標(biāo)網(wǎng)頁,從該網(wǎng)頁集中搜尋一與該目標(biāo)網(wǎng)頁URL相似度最高網(wǎng)頁作為參考網(wǎng)頁,然后將這兩個(gè)頁面轉(zhuǎn)化成相應(yīng)的DOM樹; 22)刪除目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中相同的節(jié)點(diǎn); 23)根據(jù)步驟22)處理后的目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹,確定目標(biāo)網(wǎng)頁和參考網(wǎng)頁的核心內(nèi)容路徑,進(jìn)行網(wǎng)頁正文的提取。
3.如權(quán)利要求2所述的方法,其特征在于所述刪除目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中相同的節(jié)點(diǎn)的方法為: 31)從目標(biāo)網(wǎng)頁DOM樹中的第一層節(jié)點(diǎn)開始,對(duì)于每一層節(jié)點(diǎn),在參考網(wǎng)頁DOM樹中尋找準(zhǔn)相同節(jié)點(diǎn):即標(biāo)簽相同,并且屬性鍵值對(duì)也相同; 32)將準(zhǔn)相同節(jié)點(diǎn)看成文本行進(jìn)行逐行的字符串對(duì)比;如果兩個(gè)節(jié)點(diǎn)的對(duì)應(yīng)文本行完全相同,則這兩個(gè)節(jié)點(diǎn)完全相同,在兩顆DOM樹中分別刪除該節(jié)點(diǎn);如果兩個(gè)節(jié)點(diǎn)對(duì)應(yīng)的文本行不同,則逐層遞歸地對(duì)該節(jié)點(diǎn)的子節(jié)點(diǎn)們進(jìn)行比對(duì),查找相同節(jié)點(diǎn)并在兩顆DOM樹中分別刪除,直到目標(biāo)網(wǎng)頁DOM樹中不再有與參考網(wǎng)頁DOM樹中相同的節(jié)點(diǎn)。
4.如權(quán)利要求2或3所述的方法,其特征在于所述核心內(nèi)容路徑的確定方法為:計(jì)算目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中每一節(jié)點(diǎn)的文本數(shù),如果某個(gè)節(jié)點(diǎn)的文本數(shù)小于設(shè)定的文本數(shù)閾值,則刪除該節(jié)點(diǎn);提取目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中剩余的包含文本的節(jié)點(diǎn)作為相應(yīng)DOM樹對(duì)應(yīng)網(wǎng)頁的核心內(nèi)容路徑。
5.如權(quán)利要求2或3所述的方法,其特征在于確定所述核心內(nèi)容路徑之前,對(duì)目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹進(jìn)行雜質(zhì)內(nèi)容刪除處理,其方法:計(jì)算目標(biāo)網(wǎng)頁DOM樹和參考網(wǎng)頁DOM樹中每一節(jié)點(diǎn)包含鏈接元素<a>的節(jié)點(diǎn)的鏈接文本密度,如果大于設(shè)定密度閾值,則刪除該節(jié)點(diǎn)。
6.如權(quán)利要求1所述的方法,其特征在于以網(wǎng)頁正文的段落為單元,對(duì)每一相似頁面組內(nèi)所有網(wǎng)頁進(jìn)行同質(zhì)內(nèi)容的提取和差異化內(nèi)容的提取。
7.如權(quán)利要求6所述的方法,其特征在于生成所述頁面Pi的方法為:將同質(zhì)內(nèi)容和差異化內(nèi)容融合為一新的文檔,其中同質(zhì)內(nèi)容字體加粗或加黑,且同質(zhì)內(nèi)容和差異性內(nèi)容以不同顏色呈現(xiàn);然后將對(duì)應(yīng)相似頁面組內(nèi)所有網(wǎng)頁的原始地址附在該文檔中,并為其動(dòng)態(tài)建立一個(gè)新的網(wǎng)址URLi,生成所述頁面Pi。
8.如權(quán)利要求1所述的方法,其特征在于生成所述相似頁面組的方法為:兩兩遍歷所述候選結(jié)果集中的網(wǎng)頁,計(jì)算標(biāo)題的字符串匹配度T、網(wǎng)頁有效內(nèi)容長度的匹配度L和頁面出現(xiàn)頻率最高的N個(gè)關(guān)鍵詞的重疊度F,然后根據(jù)S = alpha*T+beta*L+gamma*F得到兩個(gè)頁面的相似性S,將相似性S大于設(shè)定閾值的頁面作為一組;其中,alpha, beta和ga_a的取值均在[O, I]區(qū)間,且 alpha+beta+gamma = I。
9.如權(quán)利要求8所述的方法,其特征在于首先從所述候選結(jié)果集中尋找網(wǎng)頁的同質(zhì)化信息,根據(jù)同質(zhì)化信息度所述候選結(jié)果集中的網(wǎng)頁進(jìn)行聚類,然后兩兩遍歷每一類中的網(wǎng)頁,計(jì)算頁面的相似性。
10.如權(quán)利要求1所述的方法,其特征在于將查詢?cè)~以及最終形成的聚合結(jié)果保存到一數(shù)據(jù)庫中并建立索引;當(dāng)輸入新的查詢?cè)~時(shí),根據(jù)該索引檢索出相對(duì)應(yīng)的聚合結(jié)果。
【文檔編號(hào)】G06F17/30GK103955529SQ201410198228
【公開日】2014年7月30日 申請(qǐng)日期:2014年5月12日 優(yōu)先權(quán)日:2014年5月12日
【發(fā)明者】李曉東, 楊柳青, 洪博, 陳勇, 耿光剛 申請(qǐng)人:中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心