專利名稱:在具有廣告的網(wǎng)頁中嵌入宏的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及廣告。
背景技術(shù):
在因特網(wǎng)上的內(nèi)容遞送每天持續(xù)改善。計算機用戶可以接收電子郵件、新聞、游 戲、娛樂、音樂、書籍和網(wǎng)頁,它們都利用簡單的因特網(wǎng)連接(并且在寬帶連接上具有改善 的質(zhì)量)。因特網(wǎng)用戶也訪問過多的服務(wù),諸如地圖、購物鏈接、圖像、博客、本地搜索、衛(wèi)星 圖像、分組討論、托管內(nèi)容和電子郵件。這些服務(wù)提供者可以對用戶與這樣的服務(wù)的交互進 行存檔,以基于這樣的交互確定相關(guān)聯(lián)的度量和/或修改這些服務(wù),以進一步增強用戶體 驗。
發(fā)明內(nèi)容
本公開涉及一種在具有廣告的網(wǎng)頁中嵌入宏的系統(tǒng)和方法。在一些實施方式中, 一種方法包括接收在遠程網(wǎng)頁中嵌入的摘錄(snippet)。識別用于在摘錄中嵌入一個或 多個宏的規(guī)則。該一個或多個宏與對用戶動作進行存檔相關(guān)聯(lián),所述用戶動作和在網(wǎng)頁中 呈現(xiàn)的廣告相關(guān)聯(lián)。至少部分地基于該規(guī)則來從多個可識別的格式確定摘錄的格式。根據(jù) 與摘錄格式相關(guān)聯(lián)的規(guī)則來在摘錄中自動地嵌入該一個或多個宏。在附圖和下面的說明書中給出了本發(fā)明的一個或多個實施方式的細節(jié)。通過說明 書和附圖以及權(quán)利要求,本發(fā)明的其他特征、目的和優(yōu)點將顯而易見。
圖1是圖示根據(jù)本公開的一些實施方式的、用于嵌入宏的示例系統(tǒng)的框圖;圖2A和2B是圖示根據(jù)本公開的一些實施方式的、在圖1的示例摘錄和修改的摘 錄的框圖;以及圖3是圖示在第三方廣告中嵌入宏的示例方法的流程圖。
具體實施例方式圖1圖示用于嵌入與對通過網(wǎng)頁顯示的廣告進行存檔相關(guān)聯(lián)的宏的示例系統(tǒng) 100。例如,系統(tǒng)100可以在呈現(xiàn)第三方廣告的網(wǎng)頁中自動地嵌入點擊跟蹤的宏和緩存異常 終止(bust)的宏。宏可以包括由串表示的一組指令,以便在源代碼中插入的串在編譯期間 被替換為該組指令。在所圖示的示例中,嵌入的宏可以執(zhí)行下面的一個或多個緩存異常 終止;點擊URL插入;和/或與監(jiān)控用戶行為相關(guān)聯(lián)的其他功能。為了嵌入一個或多個宏,系統(tǒng)100可以改變、替換或修改在網(wǎng)頁中的摘錄。摘錄通常包括可以并入更大的編程模塊 (例如,網(wǎng)頁)內(nèi)的可重用的源代碼(例如,HTML、Javascript)。例如,網(wǎng)頁發(fā)布器可以在 網(wǎng)頁內(nèi)包括用于嵌入第三方廣告的摘錄。在這個示例中,廣告主可以提供摘錄,該摘錄當(dāng)被 執(zhí)行時檢索要通過網(wǎng)頁呈現(xiàn)的第三方廣告。與廣告相關(guān)聯(lián)地,系統(tǒng)100可以在一些實施方 式中通過自動地修改摘錄來自動地將一個或多個宏嵌入網(wǎng)頁中。例如,系統(tǒng)100可以至少 響應(yīng)于發(fā)布器利用摘錄來更新網(wǎng)頁而自動地修改要嵌入宏的摘錄。如上所述,系統(tǒng)100可 以修改摘錄以自動地嵌入用于對與第三方廣告相關(guān)聯(lián)的動作進行存檔的宏。通常,摘錄可以是多個不同的格式中的任何一種。例如,不同的摘錄格式可以包括 標(biāo)準(zhǔn)的IMG格式、浮動Javascript格式、頁面內(nèi)的IFRAME(內(nèi)幀)格式和/或來自多個不 同的第三方賣主的可擴展的IFRAME格式等。在一些實施方式中,系統(tǒng)100可以從多個可識 別的格式識別摘錄的格式,并且至少部分地基于所識別的格式來自動地修改要嵌入宏的摘 錄。在如此進行中,系統(tǒng)100可以提供下面的一個或多個自動地對富媒體創(chuàng)意檢測創(chuàng)意的 賣主/類型;向富媒體創(chuàng)意(例如,摘錄)內(nèi)自動地插入點擊跟蹤的、緩存異常終止的和/ 或其他的宏;支持能夠處理不同類型的宏(例如,廣告管理器、DFP)的各種規(guī)則;以及限定 容易被非工程師寫和維護的插入規(guī)則;等等。另外,系統(tǒng)100可以獨立于來自發(fā)布器的修改 或其他輸入來在多個不同的摘錄格式中嵌入宏。在該情況下,可以不要求發(fā)布器明白不同 的摘錄格式以及用于編輯要嵌入宏的不同類型的摘錄的特定規(guī)則。在高層級,系統(tǒng)100包括發(fā)布器102,發(fā)布器102通過網(wǎng)絡(luò)106來耦接到編輯服務(wù) 器104。在所描述的實施方式中,發(fā)布器102本地存儲網(wǎng)頁108和/或向網(wǎng)絡(luò)106提供網(wǎng)頁 108,并且當(dāng)通過客戶端(未示出)來呈現(xiàn)網(wǎng)頁108時,客戶端可以至少響應(yīng)于處理在網(wǎng)頁 108中的摘錄110來檢索第三方廣告。服務(wù)器104包括存儲器112和處理器114。存儲器 112存儲樹文件116,用于在樹文件116 (例如,DOM樹、Javascript解析樹)中識別從摘錄 110得出的分級數(shù)據(jù);識別規(guī)則118,包括用于確定摘錄格式的規(guī)則;以及編輯規(guī)則120,包 括用于修改要嵌入宏的摘錄110的規(guī)則,該宏關(guān)聯(lián)于對與廣告相關(guān)聯(lián)的動作進行存檔。處 理器114包括解析器122,用于解析摘錄110以產(chǎn)生樹文件116 ;以及編輯引擎124,用于 基于識別規(guī)則118和編輯規(guī)則120來修改要嵌入宏的摘錄110。在高的操作層級,發(fā)布器 102可以至少響應(yīng)于利用摘錄110來更新網(wǎng)頁108來自動地發(fā)送在摘錄110中嵌入宏的請 求126。解析器122至少部分地基于請求126來識別摘錄110,并且解析摘錄110來產(chǎn)生一 個或多個樹文件116。在一些實施方式中,解析器122可以包括HTML解析器和Javascript 解析器(例如,rhino)。rhino可以包括表達節(jié)點所對應(yīng)的、在輸入文本中的位置。編輯引 擎124至少部分地基于識別規(guī)則118來從多個可識別的摘錄格式確定摘錄110的格式。另 外,編輯引擎124基于與所識別的摘錄格式相關(guān)聯(lián)的編輯規(guī)則120來修改摘錄110。編輯引 擎124向發(fā)布器102發(fā)送包括修改的摘錄110的響應(yīng)128,以向網(wǎng)頁108內(nèi)嵌入宏。轉(zhuǎn)向元件的更詳細的描述,系統(tǒng)100包括發(fā)布器102,發(fā)布器102包括電子計算裝 置,該電子計算裝置可用于接收、發(fā)送、處理和存儲與系統(tǒng)100相關(guān)聯(lián)的數(shù)據(jù)。在所說明的 實施例中,發(fā)布器102向客戶端(未示出)提供網(wǎng)頁108以通過⑶I顯示。網(wǎng)頁108包括 顯示,通過該顯示,可以使用例如摘錄110來向客戶端的用戶呈現(xiàn)廣告。通常,網(wǎng)頁108包 括任何機器可讀和機器可存儲的工作產(chǎn)品,該任何機器可讀和機器可存儲的工作產(chǎn)品可以 通過⑶I產(chǎn)生或用于產(chǎn)生顯示。網(wǎng)頁108可以是文件、文件的組合、具有到其他文件的嵌入鏈接的一個或多個文件等。網(wǎng)頁108可以包括文本、音頻、圖像、視頻、動畫和其他屬性。簡 而言之,網(wǎng)頁108包括任何源代碼或目標(biāo)代碼,用于產(chǎn)生顯示并且使用摘錄110來提供檢索 要在顯示中嵌入的廣告的指令。摘錄110包括任何參數(shù)、指針、變量、算法、指令、規(guī)則、文件、鏈接、源代碼或目標(biāo) 代碼、指示和/或其他數(shù)據(jù),以容易地提供可跟蹤的輔助內(nèi)容(例如,圖像、文本),以通過網(wǎng) 頁108來顯示。例如,摘錄110可以包括用于檢索要通過網(wǎng)頁108顯示的第三方廣告的超 鏈接和用于向服務(wù)器(未示出)發(fā)送要存檔的信息的超鏈接。關(guān)于監(jiān)視,摘錄110包括嵌 入由服務(wù)器104提供的一個或多個宏的一個或多個目標(biāo)部分。摘錄110的一個或多個目標(biāo) 部分可以包括或識別下面的一個或多個一個或多個超鏈接、對于URL的參數(shù)、Javascript 變量、Javascript方法自變量和/或Javascript函數(shù)自變量等。在一些實施方式中,摘錄 110可以包括HTML屬性串,諸如A標(biāo)簽的HREF屬性或SCRIPT標(biāo)簽的SRC屬性。在一些實 施方式中,摘錄110可以包括經(jīng)常被分配到變量或傳送到函數(shù)的一個或多個Javascript文 字串。例如,摘錄110可以包括“clickTag”變量,該變量可以隔開它分配的Javascript文 字串。編輯服務(wù)器104包括電子裝置,該電子裝置可用于接收、發(fā)送、處理和存儲與系統(tǒng) 100相關(guān)聯(lián)的數(shù)據(jù)。可以使用除了服務(wù)器之外的裝置或計算機以及服務(wù)器池來實現(xiàn)系統(tǒng) IOO0事實上,編輯服務(wù)器104可以是任何計算機或處理裝置,諸如刀片服務(wù)器、通用個人 計算機(PC)、Macintosh、工作站、基于Unix的計算機或任何其他適當(dāng)?shù)难b置。換句話說, 系統(tǒng)100可以包括除了通用計算機之外的計算機以及沒有傳統(tǒng)的操作系統(tǒng)的計算機。在 計算裝置實施方式中,編輯服務(wù)器104可以被適配來執(zhí)行任何操作系統(tǒng),包括LinuX、UNIX、 Windows Server或任何其他適當(dāng)?shù)牟僮飨到y(tǒng)。如上所述,編輯服務(wù)器104在該實施方式中包括存儲器112和處理器114。存儲器 112可以是本地存儲器,并且包括任何存儲器或數(shù)據(jù)庫模塊,并且可以采用易失性或非易失 性存儲器的形式,該易失性或非易失性存儲器無限制地包括磁介質(zhì)、光介質(zhì)、隨機存取存儲 器(RAM)、只讀存儲器(ROM)、可拆裝介質(zhì)或任何其他適當(dāng)?shù)谋镜鼗蜻h程存儲器部件。在所 圖示的實施方式中,存儲器112包括樹文件116、識別規(guī)則118和編輯規(guī)則120。本地存儲器 112也可以包括任何其他適當(dāng)?shù)臄?shù)據(jù),諸如VPN應(yīng)用或服務(wù)、防火墻策略、安全或訪問日志、 打印或其他報告文件、HTML文件或模板、數(shù)據(jù)類或目標(biāo)接口以及子軟件應(yīng)用或子系統(tǒng)等。樹文件116可以包括任何一個或多個數(shù)據(jù)條目和/或數(shù)據(jù)結(jié)構(gòu),該任何一個或多 個數(shù)據(jù)條目和/或數(shù)據(jù)結(jié)構(gòu)至少部分地基于解析的摘錄110包括或識別信息。例如,樹文 件116可以包括或識別DOM樹和Javascript解析樹。在一些實施方式中,樹文件116可以 基于在摘錄110中的HTML代碼包括或識別DOM樹。在一些實施方式中,樹文件116基于在 摘錄110中的Javascript包括或識別Javascript解析樹。通常,樹文件116可以識別下 面的一個或多個分級;根節(jié)點;子節(jié)點;在節(jié)點之間的父/子關(guān)系;HTML標(biāo)簽;HTML屬性; Javascript變量;對于統(tǒng)一資源定位符(URL)的參數(shù)Javascript方法聲明Javascript 文字串;和/或其它。樹文件116可以與單個摘錄110相關(guān)聯(lián),或者多個摘錄110可以與樹 文件116相關(guān)聯(lián)。在一些實施方式中,樹文件116可以與諸如DOM或Javascript的特定類 型的樹相關(guān)聯(lián)。在一些實施方式中,樹文件116可以被格式化、存儲或定義為在文本文件、 XML文檔、VSAM文件、平面文件、Btrieve文件、CSV文件、內(nèi)部變量或一個或多個庫中的各種數(shù)據(jù)結(jié)構(gòu)。簡而言之,樹文件116可以被存儲以包括在一個計算機或在多個計算機上以 任何適當(dāng)格式存儲的一個表或文件或者多個表或文件。而且,樹文件116可以是本地的或 遠程的,而不偏離本公開的范圍,并且存儲任何類型的適當(dāng)數(shù)據(jù)。識別規(guī)則118包括任何識別參數(shù)、變量、URL、算法、指令、規(guī)則、對象或其他指示 符,用于從多個不同的格式識別摘錄110的格式。例如,可以將識別規(guī)則118與HTML元素和 /或Javascript元素作比較,以從多個可識別的格式確定格式。如上所述,該多個不同的格 式可以包括標(biāo)準(zhǔn)IMG格式、浮動Javascript格式、頁面內(nèi)的IFRAME格式、來自多個不同的 第三方賣主的可擴展的IFRAME格式等等。在一些實施方式中,識別規(guī)則118可以包括數(shù)學(xué) 和/或邏輯表達式,用于確定摘錄110的格式。例如,識別規(guī)則118可以包括一個或多個邏 輯表達式,用于確定摘錄110是否包括和/或省略各種HMTL元素和/或Javascript元素。 在該情況下,識別規(guī)則118可以包括標(biāo)準(zhǔn)(例如,串),用于與在樹文件116中的HMTL元素 和/或Javascript元素作比較,以確定是否包括和/或省略特定的元素。例如,識別規(guī)則 118可以用于確定在樹文件116中是否存在IFRAME元素,這個元素是否包含SRC屬性,在 這個屬性中包含的URL是否包含域“ad. doubleclick, net”。又如,識別規(guī)則116可以用于 測試在樹文件116內(nèi)是否沒有諸如“clickTagl”的特定Javascript變量。在一些實施方 式中,識別規(guī)則118可以被格式化、存儲或定義為在文本文件、XML文檔、VSAM文件、平面文 件、Btrieve文件、CSV文件、內(nèi)部變量或一個或多個庫中的各種數(shù)據(jù)結(jié)構(gòu)。簡而言之,識別 規(guī)則118可以被存儲以包括在一個計算機或在多個計算機上以任何適當(dāng)格式存儲的一個 表或文件或者多個表或文件。而且,識別規(guī)則118可以是本地的或遠程的,而不偏離本公開 的范圍,并且存儲任何類型的適當(dāng)數(shù)據(jù)。編輯規(guī)則120包括任何參數(shù)、變量、算法、指令、規(guī)則、對象或其他指示符,用于編 輯摘錄110的至少一部分。例如,編輯規(guī)則120可以識別摘錄110的目標(biāo)部分(例如,串) 和用于替換目標(biāo)部分的串。通常,編輯規(guī)則120可以是用于兩個處理的信息(1)用于識別 特定摘錄格式的目標(biāo)部分的標(biāo)準(zhǔn);以及(2)用于修改目標(biāo)部分的指令。在一些實施方式中, 編輯規(guī)則120可以包括下面的一個或多個用于識別目標(biāo)部分的標(biāo)準(zhǔn);格式類型;宏標(biāo)識 符;編輯類型;在要對其操作的目標(biāo)部分內(nèi)的模式;和/或其他信息。關(guān)于識別目標(biāo)部分,編 輯規(guī)則120可以包括被與HMTL元素和/或Javascript元素作比較的串。在一些示例中, 編輯規(guī)則120可以包括IFRAME或腳本標(biāo)簽的串“src”屬性,用于識別目標(biāo)部分。在一些示 例中,編輯規(guī)則120可以包括串“var clickTag”,用于將向在Javascript中的clickTag變 量分配的文字串識別為目標(biāo)部分。編輯類型可以包括前置、后置、替換模式、在模式后插入、 在模式前插入和/或其他類型。宏標(biāo)識符可以包括CACHEBUSTER、CLICK_URL_ESC、CLICK_ URL_UNESC、CLICK_URL_ESC_ESC等等。在一些實施方式中,編輯規(guī)則120可以與來自多個 可識別格式的特定摘錄格式相關(guān)聯(lián)。在一些實施方式中,編輯規(guī)則120可以被格式化、存儲 或定義為在文本文件、XML文檔、VSAM文件、平面文件、Btrieve文件、CSV文件、內(nèi)部變量或 一個或多個庫中的各種數(shù)據(jù)結(jié)構(gòu)。簡而言之,編輯規(guī)則120可以被存儲以包括在一個計算 機或在多個計算機上以任何適當(dāng)格式存儲的一個表或文件或者多個表或文件。而且,編輯 規(guī)則120可以是本地的或遠程的,而不偏離本公開的范圍,并且存儲任何類型的適當(dāng)數(shù)據(jù)。處理器114執(zhí)行指令并且操縱數(shù)據(jù),以執(zhí)行服務(wù)器104的操作。雖然圖1示出了 在服務(wù)器104中的單個處理器114,但是可以根據(jù)具體需要使用多個處理器114,并且對于處理器114的引用意味著在適當(dāng)時包括多個處理器114。在所說明的實施方式中,處理器 114執(zhí)行解析器122和編輯引擎124。解析器122可以具有軟件的形式,該軟件例如可用于 將摘錄110解析為DOM樹和/或Javascript解析樹,以產(chǎn)生相關(guān)聯(lián)的樹文件116。例如,解 析器122可以在來自發(fā)布器102的請求126中識別摘錄110,并且至少部分地基于所識別的 摘錄110來產(chǎn)生一個或多個樹文件116。在一些實施方式中,解析器122可以至少部分地基 于摘錄110將摘錄解析為DOM樹和/或Javascript解析樹,并且至少部分地基于DOM樹和 /或Javascript解析樹來產(chǎn)生一個或多個樹文件116。在一些實施方式中,解析器122可 以執(zhí)行下面的一個或多個從發(fā)布器102接收請求,以嵌入一個或多個跟蹤宏;至少部分地 基于所接收的請求126來識別摘錄110 ;解析在摘錄110中的HTML代碼以產(chǎn)生DOM樹;解 析在摘錄110中的Javascript以產(chǎn)生Javascript解析樹;基于DOM樹來產(chǎn)生樹文件116 ; 基于Javascript解析樹來產(chǎn)生樹文件116 ;和或其他處理。在一些實施方式中,解析器122 可以包括單獨的HTML解析器和單獨的Javascript解析器(例如,rhino)。編輯引擎124可以包括用于至少部分地基于編輯規(guī)則120來在摘錄110中嵌入一 個或多個宏的任何軟件。例如,編輯引擎124可以根據(jù)相關(guān)聯(lián)的編輯規(guī)則120來修改摘錄 110,以嵌入一個或多個宏。在一些實施方式中,編輯引擎124可以執(zhí)行下面的一個或多個 在格式識別期間根據(jù)編輯規(guī)則120來確定是否可以編輯摘錄110 ;至少部分地基于摘錄格 式來識別編輯規(guī)則120 ;至少部分地基于編輯規(guī)則120來識別在摘錄110中的目標(biāo)區(qū)域的 位置;根據(jù)相關(guān)聯(lián)的編輯規(guī)則120來修改摘錄110的目標(biāo)區(qū)域;向發(fā)布器102發(fā)送包括修 改的摘錄110的響應(yīng)128以在網(wǎng)頁108中嵌入宏;和/或其他。關(guān)于識別摘錄格式,編輯 引擎124可以處理摘錄110以幫助從多個可識別的格式識別該格式。例如,編輯引擎124 可以處理摘錄110的副本以確定可以被應(yīng)用到副本的編輯規(guī)則120。響應(yīng)于識別了摘錄格 式,編輯引擎124可以識別用于該特定格式的編輯規(guī)則120。例如,編輯引擎124可以識別 摘錄110是Doubleclick DFA標(biāo)準(zhǔn)圖像,并且確定編輯規(guī)則120被分配到該特定格式。關(guān) 于識別目標(biāo)部分的位置,編輯引擎124可以將來自編輯規(guī)則120的標(biāo)準(zhǔn)與摘錄110作比較, 以確定要編輯的串的位置。在一些示例中,編輯引擎124可以向摘錄110應(yīng)用串“iframe src“,以識別iframe標(biāo)簽的src屬性。在一些示例中,編輯引擎124可以向摘錄110應(yīng)用 串"var clickTag”,以識別向在Javascript中的clickTag變量分配的文字串。在一些實 施方式中,編輯引擎124可以基于在DOM樹和/或Javascript解析樹的分級中的路徑、地 址或定義來識別位置。關(guān)于嵌入一個或多個宏,編輯引擎124可以根據(jù)在編輯規(guī)則120中 識別的編輯類型來修改目標(biāo)部分。例如,編輯引擎124可以將目標(biāo)部分替換為跟蹤宏(例 如,CLICK_URL_ESC)。響應(yīng)于修改摘錄110,編輯引擎124可以自動地向發(fā)布器102發(fā)送包 括修改的目標(biāo)部分的摘錄110,以在網(wǎng)頁108中嵌入該宏。無論具體實施方式
如何,“軟件”可以根據(jù)情況包括軟件、固件、布線或編程的硬件 或其任何組合。事實上,可以以任何適當(dāng)?shù)挠嬎銠C語言來編寫或描述元素引擎126,該語言 包括C、C++、Java、J#、Visual Basic、匯編程序、Perl、PHP以及其他??梢悦靼祝m然在圖 1中將解析器122和編輯引擎124圖示為包括獨立的模塊,但是解析器122和/或編輯引擎 124可以包括多個其他的子模塊,或可以替代地是單個多任務(wù)模塊,該單個多任務(wù)模塊通過 各種對象、方法或其他過程來實現(xiàn)各種特征和功能。而且,雖然被圖示為在內(nèi)容提供者104 的內(nèi)部,但是與解析器122和/或編輯引擎124相關(guān)聯(lián)的一個或多個過程可以被遠程地存儲、引用或執(zhí)行。而且,解析器122和/或編輯引擎124可以是另一個軟件模塊或企業(yè)應(yīng)用 (未示出)的子模塊,而不偏離本公開的范圍。網(wǎng)絡(luò)106便利了在服務(wù)器104和諸如發(fā)布器102的任何其他本地或遠程計算機之 間的無線或有線通信。網(wǎng)絡(luò)106可以是企業(yè)或安全網(wǎng)絡(luò)的全部或一部分。雖然被圖示為單 個網(wǎng)絡(luò),但是網(wǎng)絡(luò)106可以是被邏輯地劃分為各種子網(wǎng)或虛擬網(wǎng)的連續(xù)網(wǎng)絡(luò),而不偏離本 公開的范圍,只要網(wǎng)絡(luò)106的至少一部分可以便利在服務(wù)器104和發(fā)布器102之間通信摘 錄110。在一些實施方式中,網(wǎng)絡(luò)106涵蓋可用于便利在系統(tǒng)100內(nèi)的各個部件之間的通信 的任何內(nèi)部或外部網(wǎng)絡(luò)、多個網(wǎng)絡(luò)、子網(wǎng)絡(luò)或其組合。網(wǎng)絡(luò)106可以例如在網(wǎng)絡(luò)地址之間通 信例如網(wǎng)際協(xié)議(IP)分組、幀中繼幀、異步傳送模式(ATM)單元、語音、視頻、數(shù)據(jù)和其他適 當(dāng)?shù)男畔ⅰ>W(wǎng)絡(luò)106可以包括一個或多個局域網(wǎng)(LAN)、無線接入網(wǎng)(RAN)、城域網(wǎng)(MAN)、 廣域網(wǎng)(WAN)、被稱為因特網(wǎng)的全球計算機網(wǎng)絡(luò)的全部或一部分和/或在一個或多個位置 的任何其他通信系統(tǒng)。在操作的一個方面,發(fā)布器102可以至少響應(yīng)于用戶利用摘錄110來更新網(wǎng)頁108 來自動地發(fā)送在摘錄Iio中嵌入一個或多個跟蹤宏的請求126。例如,用戶可以利用摘錄 110更新網(wǎng)頁108,以嵌入第三方廣告,并且響應(yīng)于例如將摘錄110貼到富媒體文本區(qū)域內(nèi), 發(fā)布器102可以自動地向服務(wù)器104發(fā)送嵌入請求126。至少響應(yīng)于接收到請求126,解析 器122識別在請求126中包括的摘錄110,并且將摘錄110解析為DOM樹和/或Javascript 解析樹。至少部分地基于DOM樹和/或Javascript解析樹,解析器122產(chǎn)生一個或多個樹 文件116。在修改摘錄110之前,編輯引擎124從多個可識別的格式識別摘錄110的格式。 編輯引擎124可以通過將識別規(guī)則118與摘錄110作比較來識別該格式。在一些實施方式 中,格式對應(yīng)于單個賣主/產(chǎn)品。在一些實施方式中,每一個識別規(guī)則118與不同的摘錄格 式相關(guān)聯(lián)。在一些實施方式中,編輯引擎124可以產(chǎn)生摘錄110的一個或多個副本,并且確 定可以被應(yīng)用到摘錄110以便利格式識別過程的編輯規(guī)則120。在一些情況下,摘錄可以滿 足用于特定格式的所有識別規(guī)則。響應(yīng)于識別摘錄格式,編輯引擎124可以識別用于修改 特定格式以嵌入一個或多個宏的規(guī)則120。編輯引擎124通過例如將在編輯規(guī)則120中的 串與代碼作比較來識別在摘錄110中的目標(biāo)部分的位置。在確定該位置后,編輯引擎124 根據(jù)用于所識別的格式的編輯規(guī)則120來修改目標(biāo)位置,以嵌入一個或多個跟蹤宏。與發(fā) 送包括修改的目標(biāo)部分的摘錄110相關(guān)聯(lián),編輯引擎120可以將宏替換為例如超鏈接、可執(zhí) 行代碼和/或其他元素。編輯引擎120產(chǎn)生包括嵌入的宏的回復(fù)128。在一些實施方式中, 在網(wǎng)頁108內(nèi)嵌入宏之前,發(fā)布器102可以被提示接受包括修改的目標(biāo)部分的摘錄110。例 如,向接近文本區(qū)域的用戶顯示消息或狀態(tài),請求關(guān)于是否應(yīng)當(dāng)自動地插入修改的摘錄110 的指示,并入如果如此,則在該文本區(qū)域中的文本可以被替換為編輯的摘錄110。圖2A和2B是示例摘錄110和修改的摘錄202,用于圖示嵌入點擊跟蹤宏。所圖示 的摘錄110和202僅用于示例的目的。因此,摘錄110可以是任何其他格式并且使用其他 過程被修改,而不偏離本公開的范圍。參見圖2A,摘錄110包括HTML代碼和Javascript。在所圖示的實施方式中,摘 錄Iio包括目標(biāo)部分204,用于嵌入點擊跟蹤宏“CLICK_URL_UNESC”。與嵌入宏相關(guān),識別 目標(biāo)部分204的位置。例如,圖1的編輯引擎124可以通過識別Javascript成員gEbAd. interactions和/或模式ebN來識別目標(biāo)部分。在一些情況下,在這個示例中的編輯引擎124可以將通過串“gEbAd. interactions”和/或“ebN”指定的標(biāo)準(zhǔn)與在摘錄110中的 Javascript作比較。參見圖2B,修改的摘錄202包括修改的目標(biāo)部分206。在識別目標(biāo)部 分的位置后,接近模式“ebN”的占位符“ % C”的值被修改以嵌入宏CLICK_URL_UNESC。返 回到該示例,編輯引擎124可以至少部分地基于用于摘錄格式的編輯規(guī)則120來識別編輯 類型和宏。在所說明的示例中,編輯類型是替換,并且宏是CLICK_URL_UNESC。編輯引擎124 將串“ % C”替換為串“ % % CLICK_URL_UNESC% % ”,以產(chǎn)生修改的目標(biāo)部分206。圖3是圖示示例方法300的流程圖,示例方法300用于在摘錄中自動地嵌入一個 或多個宏,以對與第三方廣告相關(guān)聯(lián)的用戶行為進行存檔。通常,方法300描述了一種示例 技術(shù),其中,至少部分地基于從多個可識別的摘錄格式確定的格式來修改摘錄。例如,系統(tǒng) 100可以使用用于實現(xiàn)所述功能的一些或全部的邏輯元素的任何適當(dāng)組合和布置來執(zhí)行方 法 300。方法300在步驟302開始,其中,接收包括摘錄的異步Javascript和XML(AJAX) 請求。例如,圖1的解析器122可以接收包括摘錄110的AJAX請求126。在這個示例中,發(fā) 布器102可以至少響應(yīng)于發(fā)布器102利用摘錄110更新網(wǎng)頁108來自動地發(fā)送AJAX請求 126。至少響應(yīng)于接收到AJAX請求,在步驟S304中使用摘錄來識別摘錄。在該示例中,解析 器122可以至少部分地基于請求126來識別摘錄110。在步驟306,解析該摘錄以在該摘錄 中產(chǎn)生用于HTML代碼的DOM樹和用于Javascript的一個或多個Javascript解析樹。再一 次在該示例中,解析器122可以解析所識別的摘錄110,以在摘錄110中例如使用Tagsoup 產(chǎn)生用于HTML代碼的DOM樹和產(chǎn)生用于Javascript的每一個部分的Javascript解析樹。 在這個示例中,解析器122可以至少部分地基于DOM樹和/或Javascript解析樹來產(chǎn)生一 個或多個樹文件116。與產(chǎn)生DOM樹和Javascript解析樹相關(guān),在步驟308識別識別規(guī)則 和編輯規(guī)則。返回到該示例,編輯引擎124可以識別用于識別摘錄110的格式的識別規(guī)則 118和編輯規(guī)則120。如上所述,編輯引擎124可以在識別摘錄110的格式的過程中向摘錄 110的副本應(yīng)用編輯規(guī)則120。接下來,在步驟310,至少部分地基于摘錄、識別規(guī)則和編輯 規(guī)則來從多個可識別的摘錄格式確定摘錄格式。在該示例中,編輯引擎120可以將用于不 同格式的標(biāo)準(zhǔn)與摘錄110作比較,并且確定可以向摘錄110的副本應(yīng)用的編輯規(guī)則120。至少響應(yīng)于確定摘錄格式,在步驟312識別用于摘錄格式的編輯規(guī)則。再一次返 回到該示例,編輯引擎124可以將識別的摘錄格式映射到編輯規(guī)則120,以在摘錄110中嵌 入至少一個宏。在一些實施方式中,向不同的編輯規(guī)則120分配多個可識別的摘錄格式的 每一個。在步驟314,根據(jù)所識別的編輯規(guī)則來定位用于嵌入一個或多個宏的目標(biāo)串。對于 該示例,編輯引擎124可以通過將來自所識別的編輯規(guī)則120的標(biāo)準(zhǔn)與摘錄110作比較來 識別目標(biāo)串。在這個示例中,編輯引擎124可以基于HTML屬性、Javascript文字串和/或 其他標(biāo)準(zhǔn)來識別位置。接下來,在步驟316,至少部分地基于所識別的編輯規(guī)則來修改目標(biāo) 串以嵌入一個或多個宏。再一次返回到該示例,編輯引擎124可以識別在編輯規(guī)則120中的 編輯類型和一個或多個宏,并且根據(jù)編輯類型和一個或多個宏來編輯目標(biāo)串。在步驟318, 包括嵌入的宏的摘錄被發(fā)送到發(fā)布器,以更新相關(guān)聯(lián)的網(wǎng)頁。在該示例中,編輯引擎124向 發(fā)布器102發(fā)送包括修改的目標(biāo)串206的修改的摘錄202,以在網(wǎng)頁108內(nèi)嵌入宏。雖然已經(jīng)在特定實施方式和一般相關(guān)聯(lián)的方法方面描述了本公開,但是這些實施 方式和方法的改變和置換對于本領(lǐng)域內(nèi)的技術(shù)人員是顯然的。
權(quán)利要求
1.一種方法,包括接收在遠程網(wǎng)頁中嵌入的摘錄;識別用于在所述摘錄中嵌入一個或多個宏的規(guī)則,其中,所述一個或多個宏與對用戶 動作進行存檔相關(guān)聯(lián),所述用戶動作和在所述網(wǎng)頁中呈現(xiàn)的廣告相關(guān)聯(lián);至少部分地基于所述規(guī)則來從多個可識別的格式確定所述摘錄的格式;以及 根據(jù)與所述摘錄格式相關(guān)聯(lián)的規(guī)則來自動地在所述摘錄中嵌入所述一個或多個宏。
2.根據(jù)權(quán)利要求1所述的方法,確定所述摘錄的所述格式包括確定所述摘錄格式,確 定所述摘錄格式包括將所述摘錄的至少部分與關(guān)聯(lián)于所述多個可識別的格式的標(biāo)準(zhǔn)作比 較。
3.根據(jù)權(quán)利要求2所述的方法,其中,所述規(guī)則包括用于編輯所述摘錄的至少一部分 的規(guī)則,所述方法進一步包括確定是否能夠通過與確定所述摘錄格式相關(guān)的所述編輯規(guī) 則中的一個或多個來編輯所述摘錄。
4.根據(jù)權(quán)利要求1所述的方法,其中,所述摘錄格式識別要在所述網(wǎng)頁中呈現(xiàn)的所述 廣告的類型。
5.根據(jù)權(quán)利要求1所述的方法,其中,所述一個或多個宏包括第一宏,用于對用戶與 所述廣告交互的行為進行存檔;以及第二宏,用于基本防止在客戶端中所述廣告的緩存。
6.根據(jù)權(quán)利要求1所述的方法,進一步包括解析所述摘錄,以產(chǎn)生文檔對象模型(DOM)樹和解析的Javascript表達樹; 至少部分地基于所述一個或多個規(guī)則和所述DOM樹以及所述解析的Javascript表達 樹來確定在所述摘錄中的一個或多個目標(biāo)串;根據(jù)所述一個或多個規(guī)則來修改所述一個或多個目標(biāo)串;以及 向發(fā)布器發(fā)送包括所述一個或多個修改的目標(biāo)串的所述摘錄,以在所述網(wǎng)頁中嵌入所 述一個或多個宏。
7.根據(jù)權(quán)利要求6所述的方法,其中,至少部分地基于在分級中的路徑、地址或定義中 的一個來確定所述一個或多個目標(biāo)串。
8.根據(jù)權(quán)利要求6所述的方法,其中,修改所述一個或多個目標(biāo)串包括替換所述一個 或多個目標(biāo)串的至少子串。
9.根據(jù)權(quán)利要求8所述的方法,其中,所述摘錄包括超文本標(biāo)記語言(HTML)和 Javascript0
10.根據(jù)權(quán)利要求1所述的方法,其中,在異步Javascript和XML(AJAX)請求中接收所 述摘錄。
11.用于嵌入宏的軟件,包括實現(xiàn)在介質(zhì)上的計算機可讀指令,所述計算機可讀指令能 夠用于接收在遠程網(wǎng)頁中嵌入的摘錄;識別用于在所述摘錄中嵌入一個或多個宏的規(guī)則,其中,所述一個或多個宏與對用戶 動作進行存檔相關(guān)聯(lián),所述用戶動作和在所述網(wǎng)頁中呈現(xiàn)的廣告相關(guān)聯(lián);至少部分地基于所述規(guī)則來從多個可識別的格式確定所述摘錄的格式;以及 根據(jù)與所述摘錄格式相關(guān)聯(lián)的規(guī)則來自動地在所述摘錄中嵌入所述一個或多個宏。
12.根據(jù)權(quán)利要求11所述的軟件,其中能夠用于確定所述摘錄的所述格式的所述軟件包括能夠用于確定所述摘錄格式的軟件,確定所述摘錄格式包括將所述摘錄的至少部分 與關(guān)聯(lián)于所述多個可識別的格式的標(biāo)準(zhǔn)作比較。
13.根據(jù)權(quán)利要求12所述的軟件,其中,所述規(guī)則包括用于編輯所述摘錄的至少一部 分的規(guī)則,所述軟件進一步能夠用于確定是否能夠通過與確定所述摘錄格式相關(guān)的所述編 輯規(guī)則中的一個或多個來編輯所述摘錄。
14.根據(jù)權(quán)利要求11所述的軟件,其中,所述摘錄格式識別要在所述網(wǎng)頁中呈現(xiàn)的所 述廣告的類型。
15.根據(jù)權(quán)利要求11所述的軟件,其中,所述一個或多個宏包括第一宏,用于對用戶 與所述廣告交互的行為進行存檔;以及第二宏,用于基本地防止在客戶端中所述廣告的緩存。
16.根據(jù)權(quán)利要求11所述的軟件,進一步能夠用于解析所述摘錄,以產(chǎn)生文檔對象模型(DOM)樹和解析的Javascript表達樹; 至少部分地基于所述一個或多個規(guī)則和所述DOM樹以及所述解析的Javascript表達 樹來確定在所述摘錄中的一個或多個目標(biāo)串;根據(jù)所述一個或多個規(guī)則來修改所述一個或多個目標(biāo)串;以及 向發(fā)布器發(fā)送包括所述一個或多個修改的目標(biāo)串的所述摘錄,以在所述網(wǎng)頁中嵌入所 述一個或多個宏。
17.根據(jù)權(quán)利要求16所述的軟件,其中,至少部分地基于在分級中的路徑、地址或定義 來確定所述一個或多個目標(biāo)串。
18.根據(jù)權(quán)利要求16所述的軟件,其中,能夠用于修改所述一個或多個目標(biāo)串的所述 軟件包括能夠用于替換所述一個或多個目標(biāo)串的至少子串的軟件。
19.根據(jù)權(quán)利要求18所述的軟件,其中,所述摘錄包括HTML和Javascript。
20.根據(jù)權(quán)利要求11所述的軟件,其中,在AJAX請求中接收所述摘錄。
21.—種系統(tǒng),包括用于接收在遠程網(wǎng)頁中嵌入的摘錄的裝置;用于識別用于在所述摘錄中嵌入一個或多個宏的規(guī)則的裝置,其中,所述一個或多個 宏與對用戶動作進行存檔相關(guān)聯(lián),所述用戶動作和在所述網(wǎng)頁中呈現(xiàn)的廣告相關(guān)聯(lián);用于至少部分地基于所述規(guī)則來從多個可識別的格式確定所述摘錄的格式的裝置;以及用于根據(jù)與所述摘錄格式相關(guān)聯(lián)的規(guī)則來自動地在所述摘錄中嵌入所述一個或多個 宏的裝置。
全文摘要
本發(fā)明涉及用于在具有廣告的網(wǎng)頁中嵌入宏的系統(tǒng)和方法。在一些實施方式中,一種方法包括接收在遠程網(wǎng)頁108中嵌入的摘錄110。識別用于在該摘錄110中嵌入一個或多個宏的規(guī)則。該一個或多個宏與對用戶動作進行存檔相關(guān)聯(lián),所述用戶動作和在該網(wǎng)頁108中呈現(xiàn)的廣告相關(guān)聯(lián)。至少部分地基于該規(guī)則來從多個可識別的格式確定該摘錄110的格式。根據(jù)與該摘錄格式相關(guān)聯(lián)的規(guī)則來自動地在該摘錄110中嵌入該一個或多個宏。
文檔編號G06Q30/00GK102124481SQ200980132355
公開日2011年7月13日 申請日期2009年6月26日 優(yōu)先權(quán)日2008年6月26日
發(fā)明者喬納森·尼克法亞姆, 史蒂芬·楚恩 申請人:谷歌公司