本發(fā)明涉及一種面向移動(dòng)互聯(lián)網(wǎng)自適應(yīng)增量的內(nèi)容聚合方法,屬于數(shù)據(jù)處理的技術(shù)領(lǐng)域。
背景技術(shù):
目前,爬蟲技術(shù)增量實(shí)現(xiàn)的依據(jù)是,互聯(lián)網(wǎng)是實(shí)時(shí)變化的,具有很強(qiáng)的動(dòng)態(tài)性。頁(yè)面更新策略主要是決定何時(shí)更新之前已經(jīng)下載過的頁(yè)面。常見的更新策略又有以下三種:
1.歷史參考策略。根據(jù)頁(yè)面以往的歷史更新數(shù)據(jù),預(yù)測(cè)該頁(yè)面未來何時(shí)會(huì)發(fā)生變化。一般來說,是通過泊松過程進(jìn)行建模進(jìn)行預(yù)測(cè)。
2.用戶體驗(yàn)策略。盡管搜索引擎針對(duì)于某個(gè)查詢條件能夠返回?cái)?shù)量巨大的結(jié)果,但是用戶往往只關(guān)注前幾頁(yè)結(jié)果。因此,抓取系統(tǒng)可以優(yōu)先更新那些現(xiàn)實(shí)在查詢結(jié)果前幾頁(yè)中的頁(yè)面,而后再更新那些后面的頁(yè)面。這種更新策略也是需要用到歷史信息的。用戶體驗(yàn)策略保留頁(yè)面的多個(gè)歷史版本,并且根據(jù)過去每次內(nèi)容變化對(duì)搜索質(zhì)量的影響,得出一個(gè)平均值,用這個(gè)值作為決定何時(shí)重新抓取的依據(jù)。
3.聚類抽樣策略。前面提到的兩種更新策略都有一個(gè)前提:需要頁(yè)面的歷史信息。這樣就存在兩個(gè)問題:第一,系統(tǒng)要是為每個(gè)系統(tǒng)保存多個(gè)版本的歷史信息,無疑增加了很多的系統(tǒng)負(fù)擔(dān);第二,要是新的頁(yè)面完全沒有歷史信息,就無法確定更新策略。
這種策略認(rèn)為,頁(yè)面具有很多屬性,類似屬性的頁(yè)面,可以認(rèn)為其更新頻率也是類似的。要計(jì)算某一個(gè)類別頁(yè)面的更新頻率,只需要對(duì)這一類頁(yè)面抽樣,以他們的更新周期作為整個(gè)類別的更新周期。
但現(xiàn)有的爬取方法都存在不足,傳統(tǒng)的信息獲取技術(shù)重復(fù)爬取已爬取過的信息,人們將其運(yùn)算處理需要耗費(fèi)龐大的時(shí)間,這樣,將會(huì)增加服務(wù)器的負(fù)載量,延遲獲取新產(chǎn)生的信息。同時(shí),傳統(tǒng)的信息獲取技術(shù),并不能夠適應(yīng)所有的網(wǎng)站,對(duì)于每一個(gè)網(wǎng)站,需要重新改寫其代碼,大大提高了爬蟲技術(shù)應(yīng)用成本。無法及時(shí)通過智能分析頁(yè)面信息,實(shí)現(xiàn)聚合各頁(yè)面內(nèi)容,數(shù)據(jù)獲取不及時(shí)、不完整,同時(shí)更具時(shí)效、商用性;無法快速實(shí)現(xiàn)用戶直接獲取自己所需要的信息。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題在于克服現(xiàn)有技術(shù)的不足,提供一種面向移動(dòng)互聯(lián)網(wǎng)自適應(yīng)增量的內(nèi)容聚合方法,解決現(xiàn)有的爬起方法無法及時(shí)通過智能分析頁(yè)面信息,實(shí)現(xiàn)聚合各頁(yè)面內(nèi)容,無法快速實(shí)現(xiàn)用戶直接獲取自己所需要的信息的問題。
本發(fā)明具體采用以下技術(shù)方案解決上述技術(shù)問題:
一種面向移動(dòng)互聯(lián)網(wǎng)自適應(yīng)增量的內(nèi)容聚合方法,包括以下步驟:
步驟1、對(duì)m個(gè)目標(biāo)源網(wǎng)站預(yù)處理,記錄m個(gè)目標(biāo)源網(wǎng)站的導(dǎo)航頁(yè)面數(shù)據(jù),該數(shù)據(jù)包括m個(gè)目標(biāo)源網(wǎng)站導(dǎo)航頁(yè)面的深度N、url地址長(zhǎng)度和數(shù)量、平均頁(yè)面url地址數(shù)量;根據(jù)所記錄的m個(gè)網(wǎng)站導(dǎo)航頁(yè)面數(shù)據(jù),建立關(guān)于長(zhǎng)度和數(shù)量的二維數(shù)學(xué)模型;
步驟2、依次爬取所述m個(gè)目標(biāo)源網(wǎng)站,向下爬取每個(gè)目標(biāo)源網(wǎng)站所存在的[1.2*N]+1個(gè)頁(yè)面,記錄所得目標(biāo)源網(wǎng)站的平均頁(yè)面url地址數(shù)量、url地址長(zhǎng)度和數(shù)量,計(jì)算每個(gè)頁(yè)面的二維正態(tài)分布置信概率;并將每個(gè)頁(yè)面的置信概率按照降冪次序排列,及將每個(gè)頁(yè)面上所有url地址加入url地址池;
步驟3、爬取url地址池中位于頂部的url地址所對(duì)應(yīng)目標(biāo)頁(yè)面,將該url地址所對(duì)應(yīng)目標(biāo)頁(yè)面中所有url地址并進(jìn)入url地址池,并彈出該位于頂部的url地址;依次爬取url地址池中剩下的url地址地址所對(duì)應(yīng)目標(biāo)頁(yè)面,向量化計(jì)算各url地址對(duì)應(yīng)目標(biāo)頁(yè)面的相似度;
步驟4、根據(jù)計(jì)算所得相似度是否達(dá)到預(yù)設(shè)閾值,及位于頂部的url地址是否存在進(jìn)行遞歸操作,判斷異常,包括:當(dāng)相似度未達(dá)到預(yù)設(shè)閾值且位于頂部的url地址仍然存在,則重復(fù)步驟3;當(dāng)位于頂部的url地址不存在,則異常退出;當(dāng)相似度達(dá)到預(yù)設(shè)閾值但未遞歸完畢,則重新執(zhí)行上述步驟1至3直到遞歸完畢;
步驟5、對(duì)url地址池中所有url地址所對(duì)應(yīng)目標(biāo)頁(yè)面分析,獲取目標(biāo)信息;并進(jìn)行貝葉斯選擇篩選以完成內(nèi)容聚合,及更新二維數(shù)學(xué)模型的二維分布權(quán)重。
進(jìn)一步地,作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述步驟3還包括對(duì)url地址池中新增url地址所對(duì)應(yīng)目標(biāo)頁(yè)面爬取,及重復(fù)執(zhí)行步驟1至2。
進(jìn)一步地,作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述步驟4還包括當(dāng)url地址池為空時(shí),則異常退出。
進(jìn)一步地,作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述步驟5具體包括:
步驟51、逐一爬取url地址池中所有url地址所對(duì)應(yīng)目標(biāo)頁(yè)面及url地址上層標(biāo)簽,統(tǒng)計(jì)url地址標(biāo)簽數(shù)量、特征、深度,進(jìn)行主成分分析,加權(quán)降冪排列;
步驟52、依次匹配url地址標(biāo)簽,尋找父親節(jié)點(diǎn)的兄弟節(jié)點(diǎn)向下遞歸,爬取所需信息;
步驟53、進(jìn)入目標(biāo)信息所在頁(yè)面,進(jìn)行貝葉斯選擇以完成內(nèi)容聚合,及更新二維數(shù)學(xué)模型的二維分布權(quán)重。
進(jìn)一步地,作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述步驟53還包括錯(cuò)誤爬取檢驗(yàn)步驟,將未被貝葉斯選擇的目標(biāo)頁(yè)面確定為非目標(biāo)頁(yè)面,及根據(jù)非目標(biāo)頁(yè)面達(dá)到預(yù)設(shè)數(shù)量時(shí)更新二維正態(tài)分布與權(quán)重。
本發(fā)明還提出一種面向移動(dòng)互聯(lián)網(wǎng)的自適應(yīng)增量的內(nèi)容聚合系統(tǒng),包括:
預(yù)處理模塊,用于對(duì)m個(gè)目標(biāo)源網(wǎng)站預(yù)處理,記錄m個(gè)目標(biāo)源網(wǎng)站的導(dǎo)航頁(yè)面數(shù)據(jù);根據(jù)所記錄的m個(gè)網(wǎng)站導(dǎo)航頁(yè)面數(shù)據(jù),建立關(guān)于長(zhǎng)度和數(shù)量的二維數(shù)學(xué)模型;
爬取模塊,用于依次爬取所述m個(gè)目標(biāo)源網(wǎng)站,及向下爬取每個(gè)目標(biāo)源網(wǎng)站所存在的[1.2*N]+1個(gè)頁(yè)面;以及爬取url地址池中位于頂部的url地址所對(duì)應(yīng)目標(biāo)頁(yè)面;
分析模塊,用于根據(jù)向下爬取[1.2*N]+1個(gè)頁(yè)面,及記錄所得目標(biāo)源網(wǎng)站的平均頁(yè)面url地址數(shù)量、url地址長(zhǎng)度和數(shù)量,計(jì)算每個(gè)頁(yè)面的二維正態(tài)分布置信概率;并將每個(gè)頁(yè)面的置信概率按照降冪次序排列,及將每個(gè)頁(yè)面下對(duì)應(yīng)url地址的目標(biāo)頁(yè)面加入url地址池;以及,用于將該url地址所對(duì)應(yīng)目標(biāo)頁(yè)面中所有url地址并進(jìn)入url地址池,并彈出該位于頂部的url地址;依次爬取url地址池中剩下的url地址地址所對(duì)應(yīng)目標(biāo)頁(yè)面,向量化計(jì)算各url地址對(duì)應(yīng)目標(biāo)頁(yè)面的相似度;還用于對(duì)url地址池中所有url地址所對(duì)應(yīng)目標(biāo)頁(yè)面分析,獲取目標(biāo)信息;并進(jìn)行貝葉斯選擇篩選以完成內(nèi)容聚合,及更新二維數(shù)學(xué)模型的二維分布權(quán)重;
檢驗(yàn)?zāi)K,用于根據(jù)計(jì)算所得相似度是否達(dá)到預(yù)設(shè)閾值,及位于頂部的url地址是否存在進(jìn)行遞歸操作,判斷異常。
本發(fā)明采用上述技術(shù)方案,能產(chǎn)生如下技術(shù)效果:
本發(fā)明提供的一種面向移動(dòng)互聯(lián)網(wǎng)自適應(yīng)增量的內(nèi)容聚合方法及系統(tǒng),針對(duì)一些數(shù)據(jù)結(jié)構(gòu)特征較為復(fù)雜、提取難度較高的頁(yè)面數(shù)據(jù),本方法采取多種特征多級(jí)多次爬取所需信息,并通過比對(duì)目標(biāo)信息與已知信息的相似率保證爬取信息的準(zhǔn)確性;當(dāng)頁(yè)面發(fā)生更新時(shí),本方法的監(jiān)控池檢測(cè)到更新信息,爬取模塊增量爬取新增信息;可以針對(duì)實(shí)際情況更改或增加部分模塊來適應(yīng)實(shí)際需求;采用beautifulsoup、Xpath與正則表達(dá)式相結(jié)合的信息爬取方法,對(duì)本領(lǐng)域技術(shù)人員而言具有很強(qiáng)的可操作性,創(chuàng)新應(yīng)用貝葉斯選擇器與支持向量機(jī)機(jī)器學(xué)習(xí)算法大大提高了該方法的效率以及準(zhǔn)確率。通過多次迭代,多次檢驗(yàn),逐步遍歷提取關(guān)鍵性的信息的自適應(yīng)增量?jī)?nèi)容獲取方法,保證了獲取信息的準(zhǔn)確性,減小了信息獲取的成本。
本發(fā)明獲取技術(shù)實(shí)時(shí)保存已爬取的url地址池,通過貝葉斯分類模塊進(jìn)行信息篩選,大大提高了信息獲取的效率,減小了服務(wù)器的負(fù)載量。同時(shí),多層次遍歷爬取的方法保證了獲得信息的完整性,并能夠適應(yīng)市面上絕大多數(shù)的網(wǎng)站。可解決現(xiàn)有的爬起方法無法及時(shí)通過智能分析頁(yè)面信息,實(shí)現(xiàn)聚合各頁(yè)面內(nèi)容,無法快速實(shí)現(xiàn)用戶直接獲取自己所需要的信息的問題。
附圖說明
圖1為本發(fā)明面向移動(dòng)互聯(lián)網(wǎng)自適應(yīng)增量的內(nèi)容聚合方法的流程示意圖。
具體實(shí)施方式
下面結(jié)合說明書附圖對(duì)本發(fā)明的實(shí)施方式進(jìn)行描述。
如圖1所示,本發(fā)明提供一種面向移動(dòng)互聯(lián)網(wǎng)自適應(yīng)增量的內(nèi)容聚合方法,可以提供給用戶提供方便快捷的信息推送,通過智能分析頁(yè)面信息,聚合各頁(yè)面內(nèi)容,更新內(nèi)容,實(shí)現(xiàn)用戶直接獲取自己所需要的信息。該方法具體包括以下步驟:
步驟1、部分頁(yè)面預(yù)處理階段,找出導(dǎo)航頁(yè)的相關(guān)規(guī)律。具體如下:
對(duì)m個(gè)目標(biāo)源網(wǎng)站預(yù)處理,記錄m個(gè)目標(biāo)源網(wǎng)站的導(dǎo)航頁(yè)面數(shù)據(jù),該數(shù)據(jù)包括m個(gè)目標(biāo)源網(wǎng)站導(dǎo)航頁(yè)面的深度N、url地址長(zhǎng)度Ax和數(shù)量Bx、平均頁(yè)面url地址數(shù)量x;根據(jù)所記錄的m個(gè)網(wǎng)站導(dǎo)航頁(yè)數(shù)據(jù),建立關(guān)于長(zhǎng)度Ax和數(shù)量Bx的二維數(shù)學(xué)模型,經(jīng)過統(tǒng)計(jì)知導(dǎo)航頁(yè)和長(zhǎng)度、數(shù)量滿足二維正態(tài)分布,通過二維數(shù)學(xué)模型來得到目標(biāo)源網(wǎng)站的統(tǒng)計(jì)學(xué)特征,用于下述步驟的過濾。
步驟2、依次爬取所述m個(gè)目標(biāo)源網(wǎng)站,向下爬取每個(gè)目標(biāo)源網(wǎng)站所存在的[1.2*N]+1個(gè)頁(yè)面,根據(jù)記錄所得目標(biāo)源網(wǎng)站的平均頁(yè)面url地址數(shù)量、url地址長(zhǎng)度和數(shù)量,計(jì)算每個(gè)頁(yè)面的二維正態(tài)分布置信概率;并將每個(gè)頁(yè)面的置信概率按照降冪次序排列,及將每個(gè)頁(yè)面下對(duì)應(yīng)url地址的目標(biāo)頁(yè)面加入url地址池。
步驟3、爬取url地址池中位于頂部的url地址所對(duì)應(yīng)目標(biāo)頁(yè)面,將該url地址所對(duì)應(yīng)目標(biāo)頁(yè)面中所有url地址并進(jìn)入url地址池,并彈出該位于頂部的url地址;依次爬取url地址池中剩下的url地址地址所對(duì)應(yīng)目標(biāo)頁(yè)面,向量化計(jì)算各url地址對(duì)應(yīng)目標(biāo)頁(yè)面的相似度。所述步驟3還包括對(duì)url地址池中新增url地址所對(duì)應(yīng)目標(biāo)頁(yè)面爬取,及重復(fù)步驟1至2。
步驟4、根據(jù)計(jì)算所得相似度是否達(dá)到預(yù)設(shè)閾值,及位于頂部的url地址是否存在進(jìn)行遞歸操作,判斷異常,包括:當(dāng)相似度未達(dá)到預(yù)設(shè)閾值且位于頂部的url地址仍然存在,則重復(fù)步驟3;當(dāng)位于頂部的url地址不存在,則異常退出;當(dāng)相似度達(dá)到預(yù)設(shè)閾值但未遞歸完畢,則重新執(zhí)行上述步驟1至3直到遞歸完畢。以及,還包括當(dāng)url地址池為空時(shí),則異常退出。
步驟5、對(duì)url地址池中所有url地址所對(duì)應(yīng)目標(biāo)頁(yè)面分析,獲取目標(biāo)信息;并進(jìn)行貝葉斯選擇篩選以完成內(nèi)容聚合,及更新二維數(shù)學(xué)模型的二維分布權(quán)重。具體包括:
步驟51、逐一爬取url地址池中所有url地址所對(duì)應(yīng)目標(biāo)頁(yè)面及url地址上層標(biāo)簽,統(tǒng)計(jì)url地址標(biāo)簽數(shù)量、特征、深度,進(jìn)行主成分分析,加權(quán)降冪排列;
步驟52、依次匹配url地址標(biāo)簽,尋找父親節(jié)點(diǎn)的兄弟節(jié)點(diǎn)向下遞歸,爬取所需信息;
步驟53、進(jìn)入目標(biāo)信息所在頁(yè)面,進(jìn)行貝葉斯選擇以完成內(nèi)容聚合,及更新二維數(shù)學(xué)模型的二維分布權(quán)重。
優(yōu)選地,所述步驟53還包括錯(cuò)誤爬取檢驗(yàn)步驟,將未被貝葉斯選擇的目標(biāo)頁(yè)面確定為非目標(biāo)頁(yè)面,及根據(jù)非目標(biāo)頁(yè)面達(dá)到預(yù)設(shè)數(shù)量時(shí)更新二維正態(tài)分布與權(quán)重。非目標(biāo)頁(yè)面達(dá)到預(yù)設(shè)數(shù)量時(shí),回到步驟5中對(duì)其他網(wǎng)站進(jìn)行分析,重復(fù)上述過程,直至更新完畢。該校驗(yàn)的目的是檢驗(yàn)得到url地址對(duì)應(yīng)頁(yè)面是否匹配原始數(shù)據(jù)集,防止進(jìn)入死循環(huán)。
在此基礎(chǔ)上,本發(fā)明提出一種面向移動(dòng)互聯(lián)網(wǎng)的自適應(yīng)增量的內(nèi)容聚合系統(tǒng),該系統(tǒng)可以用于上述聚合方法進(jìn)行內(nèi)容聚合,該系統(tǒng)具體包括:
預(yù)處理模塊,用于對(duì)m個(gè)目標(biāo)源網(wǎng)站預(yù)處理,記錄m個(gè)目標(biāo)源網(wǎng)站的導(dǎo)航頁(yè)面數(shù)據(jù);根據(jù)所記錄的m個(gè)網(wǎng)站導(dǎo)航頁(yè)面數(shù)據(jù),建立關(guān)于長(zhǎng)度和數(shù)量的二維數(shù)學(xué)模型;所述數(shù)據(jù)包括m個(gè)目標(biāo)源網(wǎng)站導(dǎo)航頁(yè)面的深度N、url地址長(zhǎng)度Ax和數(shù)量Bx、平均頁(yè)面url地址數(shù)量x。
爬取模塊,用于依次爬取所述m個(gè)目標(biāo)源網(wǎng)站,及向下爬取每個(gè)目標(biāo)源網(wǎng)站所存在的[1.2*N]+1個(gè)頁(yè)面;以及爬取url地址池中位于頂部的url地址所對(duì)應(yīng)目標(biāo)頁(yè)面。
分析模塊,用于根據(jù)向下爬取[1.2*N]+1個(gè)頁(yè)面,及根據(jù)記錄的目標(biāo)源網(wǎng)站的平均頁(yè)面url地址數(shù)量、url地址長(zhǎng)度和數(shù)量,計(jì)算每個(gè)頁(yè)面的二維正態(tài)分布置信概率;并將每個(gè)頁(yè)面的置信概率按照降冪次序排列,及將每個(gè)頁(yè)面下對(duì)應(yīng)url地址的目標(biāo)頁(yè)面加入url地址池;以及,用于將該url地址所對(duì)應(yīng)目標(biāo)頁(yè)面中所有url地址并進(jìn)入url地址池,并彈出該位于頂部的url地址;依次爬取url地址池中剩下的url地址地址所對(duì)應(yīng)目標(biāo)頁(yè)面,向量化計(jì)算各url地址對(duì)應(yīng)目標(biāo)頁(yè)面的相似度;還用于對(duì)url地址池中所有url地址所對(duì)應(yīng)目標(biāo)頁(yè)面分析,獲取目標(biāo)信息;并進(jìn)行貝葉斯選擇篩選以完成內(nèi)容聚合,及更新二維數(shù)學(xué)模型的二維分布權(quán)重。
檢驗(yàn)?zāi)K,用于根據(jù)計(jì)算所得相似度是否達(dá)到預(yù)設(shè)閾值,及位于頂部的url地址是否存在進(jìn)行遞歸操作,判斷異常。
綜上,本發(fā)明的方法及系統(tǒng)可實(shí)時(shí)保存已爬取的url地址池,通過貝葉斯分類模塊進(jìn)行信息篩選,大大提高了信息獲取的效率,減小了服務(wù)器的負(fù)載量。同時(shí),多層次遍歷爬取的方法保證了獲得信息的完整性,并能夠適應(yīng)市面上絕大多數(shù)的網(wǎng)站。
上面結(jié)合附圖對(duì)本發(fā)明的實(shí)施方式作了詳細(xì)說明,但是本發(fā)明并不限于上述實(shí)施方式,在本領(lǐng)域普通技術(shù)人員所具備的知識(shí)范圍內(nèi),還可以在不脫離本發(fā)明宗旨的前提下做出各種變化。