對比的HTML標簽不包含子標簽,則保存當前對比的HTML標簽的內(nèi)容以及設(shè)置的用于標志該HTML標簽的編碼。
[0040]采用本實現(xiàn)方式提供的方式,通過數(shù)據(jù)分割、對比等處理能夠準確確定當前網(wǎng)頁數(shù)據(jù)與前版快照數(shù)據(jù)的異同,而通過編碼并建立編碼與HTML內(nèi)容(或HTML標簽)的對應(yīng)關(guān)系,也就可以通過編碼檢索到對應(yīng)的HTML內(nèi)容,為后續(xù)的處理14提供基礎(chǔ)。
[0041]在采用以上方式實現(xiàn)處理12之后,在處理14中,可以將網(wǎng)頁數(shù)據(jù)中的可替換標簽的HTML內(nèi)容替換為該可替換標簽的編碼。
[0042]圖2A是根據(jù)本發(fā)明實施例的一種應(yīng)用于網(wǎng)頁快照的數(shù)據(jù)處理系統(tǒng)的框圖,參照圖2A,數(shù)據(jù)處理系統(tǒng)20包括數(shù)據(jù)獲取模塊21、數(shù)據(jù)對比模塊22和數(shù)據(jù)替換模塊23。下面分別進行說明。
[0043]在本實施例中,數(shù)據(jù)獲取模塊21用于獲取網(wǎng)頁的網(wǎng)頁數(shù)據(jù)。
[0044]可選地,在本實施例的一種實現(xiàn)方式中,數(shù)據(jù)獲取模塊21包括:接收子模塊,用于接收觸發(fā)網(wǎng)頁快照的觸發(fā)請求,該觸發(fā)請求中攜帶有用于標志網(wǎng)頁的網(wǎng)頁名稱編碼;獲取子模塊,用于根據(jù)網(wǎng)頁名稱編碼獲取該網(wǎng)頁名稱編碼所對應(yīng)的網(wǎng)頁的網(wǎng)頁數(shù)據(jù)。
[0045]可選地,在本實施例的一種實現(xiàn)方式中,觸發(fā)請求中除了攜帶網(wǎng)頁名稱編碼之外還可攜帶用于標志用戶的用戶編碼。此時,如圖2A中的虛線框所示,數(shù)據(jù)處理系統(tǒng)20可以通過第一數(shù)據(jù)存儲模塊24存儲網(wǎng)頁名稱編碼和用戶編碼二者與網(wǎng)頁數(shù)據(jù)的對應(yīng)關(guān)系,以便于后續(xù)根據(jù)網(wǎng)頁名稱編碼和用戶編碼查詢該網(wǎng)頁對應(yīng)于該用戶的快照數(shù)據(jù)。
[0046]在本實施例中,數(shù)據(jù)對比模塊22用于根據(jù)網(wǎng)頁數(shù)據(jù)和網(wǎng)頁的前版快照數(shù)據(jù)對比確定二者中表達相同網(wǎng)頁內(nèi)容的數(shù)據(jù)。其中,前版快照數(shù)據(jù)的時間早于網(wǎng)頁數(shù)據(jù)的時間。
[0047]可選地,在本實施例的一種實現(xiàn)方式中,如圖2B所示,數(shù)據(jù)對比模塊22包括數(shù)據(jù)恢復(fù)子模塊221、分割編碼子模塊222和對比子模塊223。
[0048]數(shù)據(jù)恢復(fù)子模塊221,用于將所述前版快照數(shù)據(jù)中的編碼替換為該編碼所標志的HTML標簽的HTML內(nèi)容。當然,如果所述前版快照數(shù)據(jù)中不包含編碼,則無需調(diào)用數(shù)據(jù)恢復(fù)子模塊221,而可以直接調(diào)用分割編碼子模塊222和對比子模塊223。
[0049]分割編碼子模塊222,用于以HTML標簽為單位將網(wǎng)頁數(shù)據(jù)和前版快照數(shù)據(jù)分割得到多段與HTML標簽對應(yīng)的HTML內(nèi)容,并為前版快照數(shù)據(jù)中的HTML標簽編碼。
[0050]對比子模塊223,用于采用文本比較算法將網(wǎng)頁數(shù)據(jù)中同層級的標簽與前版快照數(shù)據(jù)中的所有標簽進行對比處理,確定可替換標簽。其中,可替換標簽是指網(wǎng)頁數(shù)據(jù)和前版快照數(shù)據(jù)中具有相同HTML內(nèi)容的HTML標簽。
[0051]在對比子模塊223的對比處理中,如果網(wǎng)頁數(shù)據(jù)中當前對比的HTML標簽與前版快照數(shù)據(jù)中的HTML標簽均存在差異,并且當前對比的HTML標簽包含子標簽,則將子標簽與前版快照數(shù)據(jù)中的HTML標簽逐個對比。依此類推直至對比完所有的標簽/子標簽。
[0052]可選地,在本實現(xiàn)方式中,如圖2A中的虛線框所示,數(shù)據(jù)處理系統(tǒng)20還可以包括第二數(shù)據(jù)存儲模塊25,其用于在對比子模塊23確定網(wǎng)頁數(shù)據(jù)中當前對比的HTML標簽與前版快照數(shù)據(jù)中的HTML標簽均存在差異,并且當前對比的HTML標簽不包含子標簽時,保存當前對比的HTML標簽的內(nèi)容以及設(shè)置的用于標志該HTML標簽的編碼。
[0053]可選地,在本實現(xiàn)方式中,數(shù)據(jù)替換模塊23具體用于將網(wǎng)頁數(shù)據(jù)中的可替換標簽的HTML內(nèi)容替換為可替換標簽的編碼。
[0054]采用本實施例提供的數(shù)據(jù)處理系統(tǒng),能夠大大節(jié)省快照數(shù)據(jù)的存儲空間,降低成本。此外,還能夠保存多個版本的歷史快照數(shù)據(jù),并且能夠為不同用戶提供不同的個性化頁面展示。
[0055]在本實施例中,關(guān)于相關(guān)名稱、術(shù)語的解釋,以及關(guān)于各個模塊、子模塊所執(zhí)行處理或可執(zhí)行處理的詳細說明請參見方法實施例中的說明,此處不贅述。
[0056]以上分模塊地對根據(jù)本發(fā)明實施例的應(yīng)用于網(wǎng)頁快照的數(shù)據(jù)處理系統(tǒng)20進行了說明,本領(lǐng)域技術(shù)人員應(yīng)當理解,以上只是本發(fā)明的一種實施例,在該實施例的記載或啟發(fā)下,本領(lǐng)域技術(shù)人員能很容易地以不同模塊實現(xiàn)本發(fā)明實施例中各個模塊的作用,例如,將本發(fā)明實施例中的某模塊的功能拆分為由多個模塊實現(xiàn),或者將某模塊的功能與其它模塊合并,或者,將某模塊的部分功能合并至其它模塊,這均落在本發(fā)明的保護范圍之內(nèi)。
[0057]圖3是根據(jù)本發(fā)明實施例的一種應(yīng)用于網(wǎng)頁快照的數(shù)據(jù)處理系統(tǒng)的框圖,參照圖3,數(shù)據(jù)處理系統(tǒng)30具有與數(shù)據(jù)處理系統(tǒng)20不同的功能劃分。具體而言,數(shù)據(jù)處理系統(tǒng)30包括數(shù)據(jù)獲取模塊31、數(shù)據(jù)對比處理模塊32、數(shù)據(jù)存儲模塊33和數(shù)據(jù)管理模塊34。下面分別進行說明。
[0058]數(shù)據(jù)獲取模塊31,用于接收觸發(fā)網(wǎng)頁快照的觸發(fā)請求,該觸發(fā)請求中包含網(wǎng)頁名稱編碼和用戶編碼,以及,用于根據(jù)網(wǎng)頁名稱編碼獲取對應(yīng)的網(wǎng)頁數(shù)據(jù)并將網(wǎng)頁名稱編碼、用戶編碼發(fā)送至數(shù)據(jù)管理模塊34。
[0059]數(shù)據(jù)存儲模塊33,用于分類存儲網(wǎng)頁歷史快照數(shù)據(jù)。
[0060]數(shù)據(jù)管理模塊34,用于負責所有網(wǎng)頁歷史快照的查詢、恢復(fù)等功能。數(shù)據(jù)管理模塊34在接收到數(shù)據(jù)獲取模塊31發(fā)送的請求后,根據(jù)網(wǎng)頁名稱編碼(在其它實施例中,也可以根據(jù)網(wǎng)頁名稱編碼和用戶編碼)進行查詢,確定數(shù)據(jù)存儲模塊33中是否保存有相應(yīng)網(wǎng)頁的歷史快照數(shù)據(jù)。如果不存在,則保存當前網(wǎng)頁數(shù)據(jù)作為該網(wǎng)頁最新版本的網(wǎng)頁歷史快照數(shù)據(jù);如果存在,則恢復(fù)前一版本的網(wǎng)頁歷史快照數(shù)據(jù)(以下簡稱為前版快照數(shù)據(jù)),并將該網(wǎng)頁歷史快照數(shù)據(jù)傳送至數(shù)據(jù)對比模塊32進行比較。
[0061]數(shù)據(jù)對比處理模塊32負責根據(jù)數(shù)據(jù)獲取模塊31發(fā)送來的網(wǎng)頁數(shù)據(jù)與數(shù)據(jù)管理模塊34發(fā)送來的前版快照數(shù)據(jù)生成當前版快照數(shù)據(jù)。并將當前版快照數(shù)據(jù)發(fā)送至數(shù)據(jù)存儲模塊33。
[0062]與圖2A所示實施例相比,本實施例中的數(shù)據(jù)管理模塊34能夠?qū)崿F(xiàn)數(shù)據(jù)對比模塊22的數(shù)據(jù)恢復(fù)子模塊221的功能,數(shù)據(jù)對比處理模塊32則能夠?qū)崿F(xiàn)數(shù)據(jù)對比模塊22的分割編碼子模塊222和對比子模塊223的功能以及數(shù)據(jù)替換模塊23的功能。也就是說,在本發(fā)明提供的數(shù)據(jù)處理系統(tǒng)中,各模塊或子模塊的功能可以合理地組合或拆分,本發(fā)明對此不做具體限制。
[0063]在本實施例中,為了便于檢索,還建立網(wǎng)頁名稱編碼和用戶編碼二者與各版本快照數(shù)據(jù)(包括:當前版快照數(shù)據(jù)和前版快照數(shù)據(jù))的對應(yīng)關(guān)系。
[0064]在本實施例中,以網(wǎng)頁A具有網(wǎng)頁Al、網(wǎng)頁A2兩個版本的網(wǎng)頁快照且其中Al的快照時間較早為例,對數(shù)據(jù)對比處理模塊32所執(zhí)行的對比與處理的步驟進行說明。
[0065]步驟1:為網(wǎng)頁文件A、Al、A2分別設(shè)置唯一的網(wǎng)頁版本編碼。例如,假設(shè)網(wǎng)頁名稱編碼為123456789,則網(wǎng)頁文件A、Al和A2的網(wǎng)頁版本編碼可以是12345678900001、12345678900002 和 12345678900003。
[0066]步驟2:以HTML標簽為單位將Al、A2分割,首先將Al各個層級的標簽進行編碼,從標簽開始至標簽結(jié)束為一段HTML內(nèi)容。這樣,可以通過編碼(例如,網(wǎng)頁版本編碼+標簽編碼)檢索到對應(yīng)文件對應(yīng)標簽的HTML內(nèi)容。
[0067]步驟3:將A2中同層級的標簽與Al的標簽使用文本比較算法進行比較,如果存在HTML內(nèi)容相同的HTML標簽,則將網(wǎng)頁A2中的與網(wǎng)頁Al中HTML內(nèi)容相同的標簽的HTML內(nèi)容替代為該標簽的編碼;如果A2中當前對比的標簽與Al中的標簽存在差異,則分以下兩種情況進行處理:(I)存在差異且當前對比的標簽存在子標簽,則將子標簽逐個與網(wǎng)頁A