頁面訪問數(shù)據(jù)的處理方法、裝置及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種頁面訪問數(shù)據(jù)的處理方法、裝置及系統(tǒng)。其中,該處理方法包括:在頁面結(jié)束時生成頁面的心跳數(shù)據(jù),其中,心跳數(shù)據(jù)中攜帶著頁面的頁面標(biāo)識和頁面加載時長;獲取保存有頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,頁面瀏覽數(shù)據(jù)中攜帶著頁面標(biāo)識;通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系;依據(jù)關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入數(shù)據(jù)表。采用本發(fā)明,解決了現(xiàn)有技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,實(shí)現(xiàn)了完整獲取頁面加載時長的效果,從而可以保證對用戶訪問行為分析的準(zhǔn)確性和完整性。
【專利說明】頁面訪問數(shù)據(jù)的處理方法、裝置及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,具體而言,涉及一種頁面訪問數(shù)據(jù)的處理方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有技術(shù)中在對網(wǎng)站的用戶訪問行為進(jìn)行統(tǒng)計分析時,往往需要統(tǒng)計用戶所瀏覽網(wǎng)頁的加載時長,現(xiàn)有技術(shù)中獲取頁面的加載時長一般是通過PV數(shù)據(jù)獲取的,可是PV數(shù)據(jù)一般是在頁面加載完成之后服務(wù)器才可以獲取到的數(shù)據(jù)。用戶在瀏覽頁面時,由于頁面加載時間很長,很多用戶在頁面還沒有完全打開時就關(guān)閉了頁面,在這種情況下,該頁面不會產(chǎn)生PV數(shù)據(jù),因此,通過該種方式就會漏掉很多頁面加載時長的數(shù)據(jù),得到的數(shù)據(jù)是不完整的。
[0003]另外,在現(xiàn)有技術(shù)中統(tǒng)計用戶的網(wǎng)站訪問行為時,往往還需要獲取用戶網(wǎng)頁瀏覽的停留時間,在傳統(tǒng)的停留時間的統(tǒng)計方法中,如果用戶在訪問網(wǎng)站的會話中訪問了 N個頁面,我們可以獲取前N-1個頁面的停留時間,具體地:將后一個頁面的開始時間減去當(dāng)前頁面的開始時間,即為當(dāng)前頁面的停留時間,然而無法對末PV的停留時間做計算,因為末PV已經(jīng)是最后一個瀏覽頁面,在該頁面之后沒有后一個頁面了,無法使用上述的后一個頁面的開始時間減去當(dāng)前頁面的開始時間,也即現(xiàn)有技術(shù)中無法獲得末PV的停留時間。
[0004]上述的PV (page view,即頁面瀏覽量),是評價網(wǎng)站流量的指標(biāo)之一。
[0005]末PV,即為用戶訪問網(wǎng)站的會話中,會存在一連串的頁面瀏覽(即PV),最后一條頁面瀏覽即為末PV。
[0006]針對現(xiàn)有技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,目前尚未提出有效的
解決方案。
【發(fā)明內(nèi)容】
[0007]針對相關(guān)技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,目前尚未提出有效的解決方案,為此,本發(fā)明的主要目的在于提供一種頁面訪問數(shù)據(jù)的處理方法、裝置及系統(tǒng),以解決上述問題。
[0008]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種頁面訪問數(shù)據(jù)的處理方法,該處理方法包括:在頁面結(jié)束時生成頁面的心跳數(shù)據(jù),其中,心跳數(shù)據(jù)中攜帶著頁面的頁面標(biāo)識和頁面加載時長;獲取保存有頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,頁面瀏覽數(shù)據(jù)中攜帶著頁面標(biāo)識;通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系;依據(jù)關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入數(shù)據(jù)表。
[0009]進(jìn)一步地,在通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系之后,該處理方法包括:從頁面瀏覽數(shù)據(jù)中提取頁面的開始時間;根據(jù)心跳數(shù)據(jù)獲取頁面的最后活躍時間;將最后活躍時間與開始時間作差得到頁面的瀏覽時長。
[0010]進(jìn)一步地,根據(jù)心跳數(shù)據(jù)獲取頁面的最后活躍時間包括:將用戶訪問會話中的所有頁面的心跳數(shù)據(jù)保存入心跳表中;提取對應(yīng)一個頁面的心跳數(shù)據(jù)得到心跳集合;將心跳集合中時間最晚的心跳數(shù)據(jù)對應(yīng)的發(fā)送時間作為最后活躍時間。
[0011]進(jìn)一步地,獲取頁面的心跳數(shù)據(jù)包括:監(jiān)測頁面的運(yùn)行狀態(tài);在運(yùn)行狀態(tài)發(fā)生變化時生成心跳數(shù)據(jù),其中,運(yùn)行狀態(tài)發(fā)生變化包括:頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成;和/或獲取頁面每隔預(yù)設(shè)時間發(fā)送的心跳數(shù)據(jù)。
[0012]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種頁面訪問數(shù)據(jù)的處理裝置,該處理裝置包括:數(shù)據(jù)獲取模塊,用于獲取頁面的心跳數(shù)據(jù),其中,心跳數(shù)據(jù)中攜帶著頁面的頁面標(biāo)識和頁面加載時長;數(shù)據(jù)表獲取裝置,用于獲取保存有頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,頁面瀏覽數(shù)據(jù)中攜帶著頁面標(biāo)識;關(guān)系建立模塊,用于通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系;導(dǎo)入模塊,用于依據(jù)關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入數(shù)據(jù)表。
[0013]進(jìn)一步地,處理裝置包括:第一提取模塊,用于從頁面瀏覽數(shù)據(jù)中提取頁面的開始時間;時間獲取模塊,用于根據(jù)心跳數(shù)據(jù)獲取頁面的最后活躍時間;計算模塊,用于將最后活躍時間與開始時間作差得到頁面的瀏覽時長。
[0014]進(jìn)一步地,時間獲取模塊包括:保存模塊,用于將用戶訪問會話中的所有頁面的心跳數(shù)據(jù)保存入心跳表中;第二提取模塊,用于提取對應(yīng)一個頁面的心跳數(shù)據(jù)得到心跳集合;確定模塊,用于將心跳集合中時間最晚的心跳數(shù)據(jù)對應(yīng)的發(fā)送時間作為最后活躍時間。
[0015]進(jìn)一步地,數(shù)據(jù)獲取模塊包括:監(jiān)測模塊,用于監(jiān)測頁面的運(yùn)行狀態(tài);生成模塊,用于在運(yùn)行狀態(tài)發(fā)生變化時生成心跳數(shù)據(jù),其中,運(yùn)行狀態(tài)發(fā)生變化包括:頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成;和/或數(shù)據(jù)獲取子模塊,用于獲取頁面每隔預(yù)設(shè)時間發(fā)送的心跳數(shù)據(jù)。
[0016]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的另一方面,提供了一種頁面訪問數(shù)據(jù)的處理系統(tǒng),該處理系統(tǒng)包括:客戶端,用于在接收到心跳命令之后生成并發(fā)送心跳數(shù)據(jù);服務(wù)器,與客戶端連接,用于發(fā)送心跳命令,并在接收到心跳數(shù)據(jù)之后,獲取保存有頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,然后通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系,并依據(jù)關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入數(shù)據(jù)表;其中,心跳數(shù)據(jù)中攜帶著頁面的頁面標(biāo)識和頁面加載時長,頁面瀏覽數(shù)據(jù)中攜帶著頁面標(biāo)識。
[0017]采用本發(fā)明,通過獲取攜帶著頁面加載時長的心跳數(shù)據(jù),然后通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系,并將心跳數(shù)據(jù)中的頁面加載時長導(dǎo)入數(shù)據(jù)表,從而可以將包含頁面加載時長的數(shù)據(jù)表展現(xiàn)給用戶,由于控制著在頁面結(jié)束時生成心跳數(shù)據(jù),從而可以將每個頁面結(jié)束的時間通過心跳數(shù)據(jù)來獲取,從而解決了現(xiàn)有技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,實(shí)現(xiàn)了完整獲取頁面加載時長的效果,從而可以保證對用戶訪問行為分析的準(zhǔn)確性和完整性。
【專利附圖】
【附圖說明】
[0018]此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0019]圖1是根據(jù)本發(fā)明實(shí)施例的頁面訪問數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖;以及
[0020]圖2是根據(jù)本發(fā)明實(shí)施例的頁面訪問數(shù)據(jù)的處理方法的流程圖。【具體實(shí)施方式】
[0021]首先,在對本發(fā)明實(shí)施例進(jìn)行描述的過程中出現(xiàn)的部分名詞或術(shù)語適用于如下解釋:
[0022]為了使本【技術(shù)領(lǐng)域】的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
[0023]需要說明的是,本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本發(fā)明的實(shí)施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
[0024]圖1是根據(jù)本發(fā)明實(shí)施例的頁面訪問數(shù)據(jù)的處理裝置的結(jié)構(gòu)示意圖。如圖1所示,該裝置可以包括:數(shù)據(jù)獲取模塊10,用于獲取頁面的心跳數(shù)據(jù),其中,心跳數(shù)據(jù)中攜帶著頁面的頁面標(biāo)識和頁面加載時長;數(shù)據(jù)表獲取裝置20,用于獲取保存有頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,頁面瀏覽數(shù)據(jù)中攜帶著頁面標(biāo)識;關(guān)系建立模塊30,用于通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系;導(dǎo)入模塊40,用于依據(jù)關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入數(shù)據(jù)表。
[0025]采用本發(fā)明,通過獲取攜帶著頁面加載時長的心跳數(shù)據(jù),然后通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系,并將心跳數(shù)據(jù)中的頁面加載時長導(dǎo)入數(shù)據(jù)表,從而可以將包含頁面加載時長的數(shù)據(jù)表展現(xiàn)給用戶,由于控制著在頁面結(jié)束時生成心跳數(shù)據(jù),從而可以將每個頁面結(jié)束的時間通過心跳數(shù)據(jù)來獲取,從而解決了現(xiàn)有技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,實(shí)現(xiàn)了完整獲取頁面加載時長的效果,從而可以保證對用戶訪問行為分析的準(zhǔn)確性和完整性。
[0026]根據(jù)本發(fā)明的上述實(shí)施例,處理裝置可以包括:第一提取模塊,用于從頁面瀏覽數(shù)據(jù)中提取頁面的開始時間;時間獲取模塊,用于根據(jù)心跳數(shù)據(jù)獲取頁面的最后活躍時間;計算模塊,用于將最后活躍時間與開始時間作差得到頁面的瀏覽時長。
[0027]其中,活躍時間是頁面還活著的時間,即心跳數(shù)據(jù)發(fā)送的時間,最后活躍時間即為對應(yīng)該頁面的最后一條心跳數(shù)據(jù)的發(fā)送時間;心跳數(shù)據(jù)的發(fā)送時間可以為客戶端生成心跳數(shù)據(jù)的時間,還可以為服務(wù)器接收到該心跳數(shù)據(jù)的時間。
[0028]上述實(shí)施例中的頁面加載時長是表示用戶瀏覽的頁面的加載完成所需的時間;頁面加載時長是由心跳命令中通過JavaScript在客戶端的網(wǎng)頁上獲取的心跳數(shù)據(jù)提供的。
[0029]具體地,在每個頁面瀏覽開始之時生成頁面瀏覽數(shù)據(jù),從頁面瀏覽數(shù)據(jù)中提取頁面的開始時間,然后再發(fā)送心跳數(shù)據(jù),頁面的運(yùn)行狀態(tài)每變化一次就生成一個心跳數(shù)據(jù),以表示該頁面還活著,在對應(yīng)該頁面的最后一個心跳數(shù)據(jù)中提取頁面的最后活躍時間,將最后活躍時間與開始時間作差得到頁面的瀏覽時長。[0030]在本發(fā)明的上述實(shí)施例中,時間獲取模塊可以包括:保存模塊,用于將用戶訪問會話中的所有頁面的心跳數(shù)據(jù)保存入心跳表中;第二提取模塊,用于提取對應(yīng)一個頁面的心跳數(shù)據(jù)得到心跳集合;確定模塊,用于將心跳集合中時間最晚的心跳數(shù)據(jù)對應(yīng)的發(fā)送時間作為最后活躍時間。
[0031]其中,心跳數(shù)據(jù)僅用于表示心跳,即此頁面還活著,也就是用戶還在看的意思。心跳數(shù)據(jù)中可以包含頁面標(biāo)識字段(唯一標(biāo)識頁面瀏覽的數(shù)據(jù)),頁面加載時長(LoadingDuration),心跳數(shù)據(jù)的發(fā)送時間標(biāo)志著頁面還活著的時間,即還有心跳的時間。
[0032]具體地,客戶端接收到服務(wù)器的心跳命令之后,發(fā)送心跳數(shù)據(jù),在頁面加載完成時或瀏覽器關(guān)閉時或頁面請求超時時均可以發(fā)送心跳數(shù)據(jù)。其中,在頁面加載完成時發(fā)送的心跳數(shù)據(jù)用于獲取頁面加載時長,在頁面結(jié)束時或是瀏覽器關(guān)閉或是超時時,發(fā)送的心跳數(shù)據(jù),用于計算末PV的瀏覽時長。
[0033]在本發(fā)明的上述實(shí)施例中,數(shù)據(jù)獲取模塊可以包括:監(jiān)測模塊,用于監(jiān)測頁面的運(yùn)行狀態(tài);生成模塊,用于在運(yùn)行狀態(tài)發(fā)生變化時生成心跳數(shù)據(jù),其中,運(yùn)行狀態(tài)發(fā)生變化包括:頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成;和/或數(shù)據(jù)獲取子模塊,用于獲取頁面每隔預(yù)設(shè)時間發(fā)送的心跳數(shù)據(jù)。
[0034]其中,服務(wù)器通過心跳命令啟動客戶端生成并發(fā)送心跳數(shù)據(jù),客戶端每隔預(yù)設(shè)時間(如上述實(shí)施例中的第一間隔和第二間隔)發(fā)送一次心跳數(shù)據(jù),并且在頁面的運(yùn)行狀態(tài)發(fā)送變化時,生成并發(fā)送心跳數(shù)據(jù)。
[0035]具體地,服務(wù)器將所有頁面的心跳數(shù)據(jù)(其中攜帶有頁面加載時長)插入到心跳表E_ S H B中,并將所有的頁面瀏覽數(shù)據(jù)插入到數(shù)據(jù)表E _PV中;然后將心跳表里的心跳數(shù)據(jù)進(jìn)行去重,僅選取相同PVID的最后一個心跳數(shù)據(jù)作為最終的心跳數(shù)據(jù),該心跳數(shù)據(jù)包含該頁面的最后活躍時間以及頁面加載時長;通過PVID將心跳表以及數(shù)據(jù)表進(jìn)行關(guān)聯(lián),將頁面加載時導(dǎo)入數(shù)據(jù)表中,并用最后心跳活躍時間減去瀏覽頁面的開始時間,從而得出瀏覽頁面的瀏覽時長。
[0036]圖2是根據(jù)本發(fā)明實(shí)施例的頁面訪問數(shù)據(jù)的處理方法的流程圖,如圖2所示該方法包括如下步驟:
[0037]步驟S202,獲取頁面的心跳數(shù)據(jù),其中,心跳數(shù)據(jù)中攜帶著頁面的頁面標(biāo)識和頁面加載時長。
[0038]步驟S204,獲取保存有頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,頁面瀏覽數(shù)據(jù)中攜帶著頁面標(biāo)識。
[0039]步驟S206,通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系。
[0040]步驟S208,依據(jù)關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入數(shù)據(jù)表。
[0041]采用本發(fā)明,通過獲取攜帶著頁面加載時長的心跳數(shù)據(jù),然后通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系,并將心跳數(shù)據(jù)中的頁面加載時長導(dǎo)入數(shù)據(jù)表,從而可以將包含頁面加載時長的數(shù)據(jù)表展現(xiàn)給用戶,由于控制著在頁面結(jié)束時生成心跳數(shù)據(jù),從而可以將每個頁面結(jié)束的時間通過心跳數(shù)據(jù)來獲取,從而解決了現(xiàn)有技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,實(shí)現(xiàn)了完整獲取頁面加載時長的效果,從而可以保證對用戶訪問行為分析的準(zhǔn)確性和完整性。
[0042]在本發(fā)明的上述實(shí)施例中,在通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系之后,處理方法可以包括:從頁面瀏覽數(shù)據(jù)中提取頁面的開始時間;根據(jù)心跳數(shù)據(jù)獲取頁面的最后活躍時間;將最后活躍時間與開始時間作差得到頁面的瀏覽時長。
[0043]其中,活躍時間是頁面還活著的時間,即心跳數(shù)據(jù)發(fā)送的時間,最后活躍時間即為對應(yīng)該頁面的最后一條心跳數(shù)據(jù)的發(fā)送時間;心跳數(shù)據(jù)的發(fā)送時間可以為客戶端生成心跳數(shù)據(jù)的時間,還可以為服務(wù)器接收到該心跳數(shù)據(jù)的時間。
[0044]上述實(shí)施例中的頁面加載時長是表示用戶瀏覽的頁面的加載完成所需的時間;頁面加載時長是由心跳命令中通過JavaScript在客戶端的網(wǎng)頁上獲取的心跳數(shù)據(jù)提供的。
[0045]具體地,在每個頁面瀏覽開始之時生成頁面瀏覽數(shù)據(jù),從頁面瀏覽數(shù)據(jù)中提取頁面的開始時間,然后再發(fā)送心跳數(shù)據(jù),頁面的運(yùn)行狀態(tài)每變化一次就生成一個心跳數(shù)據(jù),以表示該頁面還活著,在對應(yīng)該頁面的最后一個心跳數(shù)據(jù)中提取頁面的最后活躍時間,將最后活躍時間與開始時間作差得到頁面的瀏覽時長。
[0046]根據(jù)本發(fā)明的上述實(shí)施例,根據(jù)心跳數(shù)據(jù)獲取頁面的最后活躍時間可以包括:將用戶訪問會話中的所有頁面的心跳數(shù)據(jù)保存入心跳表中;提取對應(yīng)一個頁面的心跳數(shù)據(jù)得到心跳集合;將心跳集合中時間最晚的心跳數(shù)據(jù)對應(yīng)的發(fā)送時間作為最后活躍時間。
[0047]其中,心跳數(shù)據(jù)僅用于表示心跳,即此頁面還活著,也就是用戶還在看的意思。心跳數(shù)據(jù)中可以包含頁面標(biāo)識字段(唯一標(biāo)識頁面瀏覽的數(shù)據(jù)),頁面加載時長(LoadingDuration),心跳數(shù)據(jù)的發(fā)送時間標(biāo)志著頁面還活著的時間,即還有心跳的時間。
[0048]在本發(fā)明的上述實(shí)施例中,獲取頁面的心跳數(shù)據(jù)包括:監(jiān)測頁面的運(yùn)行狀態(tài);在運(yùn)行狀態(tài)發(fā)生變化時生成心跳數(shù)據(jù),其中,運(yùn)行狀態(tài)發(fā)生變化包括:頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成;和/或獲取頁面每隔預(yù)設(shè)時間發(fā)送的心跳數(shù)據(jù)。
[0049]具體地,客戶端接收到服務(wù)器的心跳命令之后,發(fā)送心跳數(shù)據(jù),在頁面加載完成時或瀏覽器關(guān)閉時或頁面請求超時時均可以發(fā)送心跳數(shù)據(jù)。其中,在頁面加載完成時發(fā)送的心跳數(shù)據(jù)用于獲取頁面加載時長,在頁面結(jié)束時或是瀏覽器關(guān)閉或是超時時,發(fā)送的心跳數(shù)據(jù),用于計算末PV的瀏覽時長。
[0050]具體地,心跳命令中可以包含如下的心跳數(shù)據(jù)獲取規(guī)則:
[0051](I)在超過預(yù)設(shè)頁面瀏覽時長之后,不再生成并發(fā)送心跳數(shù)據(jù);其中,預(yù)設(shè)頁面瀏覽時長可以為2個小時,在超過2小時之后確定用戶對于該頁面的瀏覽訪問是非正常的頁面瀏覽,不再發(fā)心跳數(shù)據(jù)。
[0052](2)對應(yīng)同一個頁面可以生成并發(fā)送多個心跳數(shù)據(jù),可選地可以只保存該次用戶訪問網(wǎng)站的會話的最后一次接收到心跳數(shù)據(jù)的時間(該時間即為最后活躍時間)。
[0053](3)在頁面瀏覽的開始階段,心跳數(shù)據(jù)發(fā)送間隔為第一間隔,在頁面瀏覽開始預(yù)設(shè)時間段之后,可以每隔第二間隔發(fā)送一次心跳數(shù)據(jù),其中,第二間隔大于第一間隔??蛇x地,第一間隔可以為5秒鐘,第二間隔可以為15秒。
[0054]由于用戶的常規(guī)行為是幾秒鐘或幾十秒鐘便會離開,因頁面瀏覽的時間不同設(shè)定不同的心跳數(shù)據(jù)發(fā)送間隔,可以節(jié)約數(shù)據(jù)存儲空間,并可以使得通訊更加通暢。
[0055]根據(jù)本發(fā)明的上述實(shí)施例,獲取頁面的心跳數(shù)據(jù)包括:監(jiān)測頁面的運(yùn)行狀態(tài);在運(yùn)行狀態(tài)發(fā)生變化時生成心跳數(shù)據(jù),其中,運(yùn)行狀態(tài)發(fā)生變化包括:頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成。
[0056]其中,服務(wù)器通過心跳命令啟動客戶端生成并發(fā)送心跳數(shù)據(jù),客戶端每隔預(yù)設(shè)時間(如上述實(shí)施例中的第一間隔和第二間隔)發(fā)送一次心跳數(shù)據(jù),并且在頁面的運(yùn)行狀態(tài)發(fā)送變化時,生成并發(fā)送心跳數(shù)據(jù)。
[0057]具體地,服務(wù)器將所有頁面的心跳數(shù)據(jù)(其中攜帶有頁面加載時長)插入到心跳表E_ S H B中,并將所有的頁面瀏覽數(shù)據(jù)插入到數(shù)據(jù)表E _PV中;然后將心跳表里的心跳數(shù)據(jù)進(jìn)行去重,僅選取相同PVID的最后一個心跳數(shù)據(jù)作為最終的心跳數(shù)據(jù),該心跳數(shù)據(jù)包含該頁面的最后活躍時間以及頁面加載時長;通過PVID將心跳表以及數(shù)據(jù)表進(jìn)行關(guān)聯(lián),將頁面加載時導(dǎo)入數(shù)據(jù)表中,并用最后心跳活躍時間減去瀏覽頁面的開始時間,從而得出瀏覽頁面的瀏覽時長。
[0058]需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機(jī)可執(zhí)行指令的計算機(jī)系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0059]從以上的描述中,可以看出,本發(fā)明實(shí)現(xiàn)了如下技術(shù)效果:
[0060]采用本發(fā)明,通過獲取攜帶著頁面加載時長的心跳數(shù)據(jù),然后通過頁面標(biāo)識建立心跳數(shù)據(jù)與數(shù)據(jù)表的關(guān)聯(lián)關(guān)系,并將心跳數(shù)據(jù)中的頁面加載時長導(dǎo)入數(shù)據(jù)表,從而可以將包含頁面加載時長的數(shù)據(jù)表展現(xiàn)給用戶,由于控制著在頁面結(jié)束時生成心跳數(shù)據(jù),從而可以將每個頁面結(jié)束的時間通過心跳數(shù)據(jù)來獲取,從而解決了現(xiàn)有技術(shù)中統(tǒng)計的頁面加載時長的數(shù)據(jù)不完整的問題,實(shí)現(xiàn)了完整獲取頁面加載時長的效果,從而可以保證對用戶訪問行為分析的準(zhǔn)確性和完整性。
[0061]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實(shí)現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0062]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種頁面訪問數(shù)據(jù)的處理方法,其特征在于,包括: 在頁面結(jié)束時生成所述頁面的心跳數(shù)據(jù),其中,所述心跳數(shù)據(jù)中攜帶著所述頁面的頁面標(biāo)識和頁面加載時長; 獲取保存有所述頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,所述頁面瀏覽數(shù)據(jù)中攜帶著所述頁面標(biāo)識; 通過所述頁面標(biāo)識建立所述心跳數(shù)據(jù)與所述數(shù)據(jù)表的關(guān)聯(lián)關(guān)系; 依據(jù)所述關(guān)聯(lián)關(guān)系將所述頁面加載時長導(dǎo)入所述數(shù)據(jù)表。
2.根據(jù)權(quán)利要求1所述的處理方法,其特征在于,在通過所述頁面標(biāo)識建立所述心跳數(shù)據(jù)與所述數(shù)據(jù)表的關(guān)聯(lián)關(guān)系之后,所述處理方法包括: 從所述頁面瀏覽數(shù)據(jù)中提取所述頁面的開始時間; 根據(jù)所述心跳數(shù)據(jù)獲取所述頁面的最后活躍時間; 將所述最后活躍時間與所述開始時間作差得到所述頁面的瀏覽時長。
3.根據(jù)權(quán)利要求2所述的處理方法,其特征在于,根據(jù)所述心跳數(shù)據(jù)獲取所述頁面的最后活躍時間包括: 將用戶訪問會話中的所有所述頁面的所述心跳數(shù)據(jù)保存入心跳表中; 提取對應(yīng)一個所述頁面的所述心跳數(shù)據(jù)得到心跳集合; 將所述心跳集合中時`間最晚的所述心跳數(shù)據(jù)對應(yīng)的發(fā)送時間作為所述最后活躍時間。
4.根據(jù)權(quán)利要求1至3中任意一項所述的處理方法,其特征在于,獲取頁面的心跳數(shù)據(jù)包括: 監(jiān)測所述頁面的運(yùn)行狀態(tài);在所述運(yùn)行狀態(tài)發(fā)生變化時生成所述心跳數(shù)據(jù),其中,所述運(yùn)行狀態(tài)發(fā)生變化包括:所述頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成;和/或 獲取所述頁面每隔預(yù)設(shè)時間發(fā)送的所述心跳數(shù)據(jù)。
5.一種頁面訪問數(shù)據(jù)的處理裝置,其特征在于,包括: 數(shù)據(jù)獲取模塊,用于獲取頁面的心跳數(shù)據(jù),其中,所述心跳數(shù)據(jù)中攜帶著所述頁面的頁面標(biāo)識和頁面加載時長; 數(shù)據(jù)表獲取裝置,用于獲取保存有所述頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,其中,所述頁面瀏覽數(shù)據(jù)中攜帶著所述頁面標(biāo)識; 關(guān)系建立模塊,用于通過所述頁面標(biāo)識建立所述心跳數(shù)據(jù)與所述數(shù)據(jù)表的關(guān)聯(lián)關(guān)系; 導(dǎo)入模塊,用于依據(jù)所述關(guān)聯(lián)關(guān)系將所述頁面加載時長導(dǎo)入所述數(shù)據(jù)表。
6.根據(jù)權(quán)利要求5所述的處理裝置,其特征在于,所述處理裝置包括: 第一提取模塊,用于從所述頁面瀏覽數(shù)據(jù)中提取所述頁面的開始時間; 時間獲取模塊,用于根據(jù)所述心跳數(shù)據(jù)獲取所述頁面的最后活躍時間; 計算模塊,用于將所述最后活躍時間與所述開始時間作差得到所述頁面的瀏覽時長。
7.根據(jù)權(quán)利要求6所述的處理裝置,其特征在于,所述時間獲取模塊包括: 保存模塊,用于將用戶訪問會話中的所有所述頁面的所述心跳數(shù)據(jù)保存入心跳表中; 第二提取模塊,用于提取對應(yīng)一個所述頁面的所述心跳數(shù)據(jù)得到心跳集合; 確定模塊,用于將所述心跳集合中時間最晚的所述心跳數(shù)據(jù)對應(yīng)的發(fā)送時間作為所述最后活躍時間。
8.根據(jù)權(quán)利要求5至7中任意一項所述的處理裝置,其特征在于,所述數(shù)據(jù)獲取模塊包括: 監(jiān)測模塊,用于監(jiān)測所述頁面的運(yùn)行狀態(tài);生成模塊,用于在所述運(yùn)行狀態(tài)發(fā)生變化時生成所述心跳數(shù)據(jù),其中,所述運(yùn)行狀態(tài)發(fā)生變化包括:所述頁面的結(jié)束、瀏覽器關(guān)閉、頁面請求超時以及頁面加載完成;和/或 數(shù)據(jù)獲取子模塊,用于獲取所述頁面每隔預(yù)設(shè)時間發(fā)送的所述心跳數(shù)據(jù)。
9.一種頁面訪問數(shù)據(jù)的處理系統(tǒng),其特征在于,包括: 客戶端,用于在接收到心跳命令之后生成并發(fā)送心跳數(shù)據(jù); 服務(wù)器,與所述客戶端連接,用于發(fā)送所述心跳命令,并在接收到所述心跳數(shù)據(jù)之后,獲取保存有所述頁面的頁面瀏覽數(shù)據(jù)的數(shù)據(jù)表,然后通過頁面標(biāo)識建立所述心跳數(shù)據(jù)與所述數(shù)據(jù)表的關(guān)聯(lián)關(guān)系,并依據(jù)所述關(guān)聯(lián)關(guān)系將頁面加載時長導(dǎo)入所述數(shù)據(jù)表; 其中,所述心跳數(shù)據(jù)中攜帶著所述頁面的所述頁面標(biāo)識和所述頁面加載時長,所述頁面瀏覽數(shù)據(jù)中攜帶著所述頁面標(biāo)識。`
【文檔編號】G06F17/30GK103778254SQ201410062764
【公開日】2014年5月7日 申請日期:2014年2月24日 優(yōu)先權(quán)日:2014年2月24日
【發(fā)明者】洪超, 楊基彬 申請人:北京國雙科技有限公司