欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種網(wǎng)頁廣告的攔截方法、裝置和瀏覽器的制造方法

文檔序號:6517665閱讀:297來源:國知局
一種網(wǎng)頁廣告的攔截方法、裝置和瀏覽器的制造方法
【專利摘要】本發(fā)明公開了一種網(wǎng)頁廣告的攔截方法、裝置和瀏覽器,所述方法包括:在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;當(dāng)判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器內(nèi)核;當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;當(dāng)查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。本發(fā)明避免了多內(nèi)核瀏覽器在內(nèi)核切換時對廣告攔截的無序性、攔截規(guī)則的不通用性導(dǎo)致的實用性差,提高了廣告攔截的效率和成功率,實用性強(qiáng),將廣告攔截后減少系統(tǒng)資源的占用,提高網(wǎng)頁加載效率。
【專利說明】—種網(wǎng)頁廣告的攔截方法、裝置和瀏覽器
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及瀏覽器的【技術(shù)領(lǐng)域】,具體涉及一種網(wǎng)頁廣告的攔截方法、一種網(wǎng)頁廣 告的攔截裝置、一種瀏覽器。
【背景技術(shù)】
[0002]瀏覽器從架構(gòu)上可以分為兩個部分,即內(nèi)核和外殼。瀏覽器內(nèi)核是指瀏覽器的 核心部分,可以分成兩部分:渲染引擎(layout engineer或者Rendering Engine)和JS (JavaScript)引擎。渲染引擎主要負(fù)責(zé)取得網(wǎng)頁的內(nèi)容(包括HTML、XML、圖像等)、整理信 息(如加入CSS (Cascading Style Sheets,層疊樣式表單)等),以及計算網(wǎng)頁的顯示方式, 然后會輸出至顯示器或打印機(jī)。瀏覽器內(nèi)核的不同對于網(wǎng)頁的語法解釋會有不同,所以渲 染的效果也不相同。所有網(wǎng)頁瀏覽器、電子郵件客戶端以及其它需要編輯、顯示網(wǎng)絡(luò)內(nèi)容的 應(yīng)用程序都需要內(nèi)核。JS引擎則是解析Javascript語言,執(zhí)行Javascript語言來實現(xiàn)網(wǎng) 頁的動態(tài)效果。
[0003]瀏覽器內(nèi)核的種類有很多,目前比較常見的瀏覽器內(nèi)核有微軟的IE瀏覽器使用 的Trident內(nèi)核,F(xiàn)irefox瀏覽器使用的Gecko內(nèi)核,蘋果的Safari瀏覽器和Google的 Chrome瀏覽器使用的Webkit內(nèi)核,以及,Opera瀏覽器采用的Presto內(nèi)核。
[0004]網(wǎng)頁往往是按照某個內(nèi)核支持的網(wǎng)絡(luò)標(biāo)準(zhǔn)制作的,對于某個特定內(nèi)核支持的網(wǎng)絡(luò) 標(biāo)準(zhǔn),其他內(nèi)核可能無法很好地支持(甚至無法支持)。例如,用戶使用Firefox瀏覽器瀏 覽網(wǎng)頁,F(xiàn)irefox的瀏覽器內(nèi)核能夠很好地支持W3C標(biāo)準(zhǔn),因此使用該瀏覽器可以瀏覽按照 W3C標(biāo)準(zhǔn)制作的網(wǎng)頁。但如果用戶想要瀏覽銀行網(wǎng)頁使用網(wǎng)絡(luò)銀行,F(xiàn)irefox瀏覽器就無法 滿足這個用戶需求。因為很多網(wǎng)絡(luò)銀行、在線支付系統(tǒng)需要ActiveX插件功能,而該功能可 能只有IE瀏覽器的Trident內(nèi)核才能支持,這樣用戶在使用Firefox瀏覽器的情況下就無 法使用網(wǎng)絡(luò)銀行了。
[0005]為了讓用戶能夠享受到更好的瀏覽體驗,瀏覽器廠商發(fā)明了“雙核”這一瀏覽器模 式,即一個瀏覽器具有兩個內(nèi)核。
[0006]在使用瀏覽器瀏覽網(wǎng)站時,很多網(wǎng)站經(jīng)常先彈出兩三個廣告窗口,例如占據(jù)了整 個瀏覽器窗口頁面顯示區(qū)域的巨幅Flash廣告,然后再顯示網(wǎng)頁主體,而網(wǎng)頁主題也有許 多通欄的橫幅廣告條、懸停廣告、飄浮廣告等等。時不時還會彈出的ActiveX控件與插件安 裝下載、運(yùn)行提示對話框、Java小程序要求安裝Java虛擬機(jī)提示框等等,嚴(yán)重影響用戶瀏 覽網(wǎng)頁,還增加了系統(tǒng)的運(yùn)行負(fù)擔(dān)。

【發(fā)明內(nèi)容】

[0007]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上 述問題的一種網(wǎng)頁廣告的攔截方法和相應(yīng)的一種網(wǎng)頁廣告的攔截裝置以及一種瀏覽器。
[0008]依據(jù)本發(fā)明的一個方面,提供了一種網(wǎng)頁廣告的攔截方法,包括:
[0009]在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;[0010]當(dāng)判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器內(nèi)核;
[0011]當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生 成當(dāng)前網(wǎng)頁的第二加載請求;
[0012]采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0013]當(dāng)查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0014]可選地,還包括:
[0015]當(dāng)判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采用預(yù)置的第二判斷規(guī)則查找 當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0016]當(dāng)查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0017]可選地,所述當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一 瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求的步驟包括:
[0018]調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0019]當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁 的請求時,提取所述請求中的URL ;
[0020]判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳 輸?shù)剿龅诙g覽器內(nèi)核中;
[0021]采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
[0022]可選地,所述采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素的步 驟包括:
[0023]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0024]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0025]和/ 或,
[0026]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0027]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0028]可選地,所述采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素的步驟包括:
[0029]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0030]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0031]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0032]或者,
[0033]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0034]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0035]或者,
[0036]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0037]刪除所述DOM元素節(jié)點。
[0038]可選地,所述采用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素的步 驟包括:
[0039]采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供 方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0040]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;[0041]和/ 或,
[0042]將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0043]接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述 服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中 和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0044]可選地,所述采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素的步驟包括:
[0045]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0046]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0047]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0048]或者,
[0049]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0050]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0051]或者,
[0052]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0053]刪除所述DOM元素節(jié)點。
[0054]根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)頁廣告的攔截裝置,包括:
[0055]第一加載請求接收模塊,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第 一加載請求;
[0056]第二瀏覽器內(nèi)核啟動模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載 時,啟動所述第二瀏覽器內(nèi)核;
[0057]第二加載請求生成模塊,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁 時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;
[0058]第一網(wǎng)頁元素查找模塊,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截 的網(wǎng)頁元素;
[0059]第一網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0060]可選地,還包括:
[0061]第二頁元素查找模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采 用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0062]第二網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0063]可選地,所述第二加載請求生成模塊還適于:
[0064]調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0065]當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁 的請求時,提取所述請求中的URL ;
[0066]判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳 輸?shù)剿龅诙g覽器內(nèi)核中;
[0067]采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
[0068]可選地,所述第一網(wǎng)頁元素查找模塊還適于:[0069]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0070]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0071]和/ 或,
[0072]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0073]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0074]可選地,所述第一網(wǎng)頁元素攔截模塊還適于:
[0075]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0076]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0077]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0078]或者,
[0079]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0080]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0081]或者,
[0082]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0083]刪除所述DOM元素節(jié)點。
[0084]可選地,所述第二頁元素查找模塊還適于:
[0085]采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供 方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0086]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0087]和/ 或,
[0088]將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0089]接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述 服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中 和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0090]可選地,所述第二網(wǎng)頁元素攔截模塊還適于:
[0091]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0092]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0093]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0094]或者,
[0095]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0096]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0097]或者,
[0098]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0099]刪除所述DOM元素節(jié)點。
[0100]根據(jù)本發(fā)明的另一方面,提供了一種瀏覽器,包括:
[0101]第一加載請求接收模塊,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第 一加載請求;
[0102]第二瀏覽器內(nèi)核啟動模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載 時,啟動所述第二瀏覽器內(nèi)核;[0103]第二加載請求生成模塊,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁 時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;
[0104]第一網(wǎng)頁元素查找模塊,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截 的網(wǎng)頁元素;
[0105]第一網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0106]本發(fā)明通過在一個瀏覽器中至少集成兩個瀏覽器內(nèi)核,基于每個瀏覽器都有自身 的優(yōu)缺點,在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動第二瀏覽器內(nèi)核加載當(dāng) 前網(wǎng)頁,可以提高加載網(wǎng)頁的效率。在采用第二瀏覽器內(nèi)核加載當(dāng)前網(wǎng)頁時,采用適于第二 瀏覽器內(nèi)核的廣告攔截規(guī)則進(jìn)行廣告的攔截,避免了多內(nèi)核瀏覽器在內(nèi)核切換時對廣告攔 截的無序性、攔截規(guī)則的不通用性導(dǎo)致的實用性差,提高了廣告攔截的效率和成功率,實用 性強(qiáng),將廣告攔截后減少系統(tǒng)資源的占用,提高網(wǎng)頁加載效率。
[0107]本發(fā)明的第一判斷規(guī)則可以為黑名單和/或白名單,基于網(wǎng)頁的URL進(jìn)行正則表 達(dá)式的匹配,操作簡便、快捷,占用系統(tǒng)資源少。
[0108]本發(fā)明在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,直接采用第一瀏覽器內(nèi) 核加載當(dāng)前網(wǎng)頁,采用適于第一瀏覽器內(nèi)核的廣告攔截規(guī)則進(jìn)行廣告的攔截,實現(xiàn)了攔截 規(guī)則根據(jù)瀏覽器內(nèi)核切換的動態(tài)轉(zhuǎn)換,實現(xiàn)了多內(nèi)核瀏覽器對廣告的無縫轉(zhuǎn)換攔截,提高 了廣告攔截的效率和成功率,實用性強(qiáng),將廣告攔截后減少系統(tǒng)資源的占用,提高網(wǎng)頁加載 效率。
[0109]本發(fā)明的第二判斷規(guī)則可以為用戶自定義的攔截名單、瀏覽器提供方的攔截名單 中和/或第三方插件的攔截名單,判斷形式多樣化,實用性強(qiáng),基于網(wǎng)頁的URL進(jìn)行匹配,操 作簡便、快捷,攔截廣告的準(zhǔn)確率高,占用系統(tǒng)資源少。
[0110]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段, 而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠 更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】

【附圖說明】
[0111]通過閱讀下文優(yōu)選實施方式的詳細(xì)描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通 技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明 的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0112]圖1示出了根據(jù)本發(fā)明一個實施例的一種網(wǎng)頁廣告的攔截方法實施例1的步驟流 程圖;
[0113]圖2示出了根據(jù)本發(fā)明一個實施例的一種網(wǎng)頁廣告的攔截方法實施例2的步驟流 程圖;以及,
[0114]圖3示出了根據(jù)本發(fā)明一個實施例的一種網(wǎng)頁廣告的攔截裝置實施例的結(jié)構(gòu)框 圖。
【具體實施方式】
[0115]下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例 所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍 完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0116]參照圖1,示出了根據(jù)本發(fā)明一個實施例的一種網(wǎng)頁廣告的攔截方法實施例1的 步驟流程圖,具體可以包括如下步驟:
[0117]步驟101,在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;
[0118]需要說明的是,本發(fā)明實施例的瀏覽器可以包括兩個或兩個以上的瀏覽器內(nèi)核, 第一瀏覽器內(nèi)核可以為瀏覽器當(dāng)前默認(rèn)使用的瀏覽器內(nèi)核,該默認(rèn)的瀏覽器內(nèi)核可以是系 統(tǒng)設(shè)置的,也可以使用戶設(shè)置的,具體可以是Webkit內(nèi)核等高性能的瀏覽器內(nèi)核。當(dāng)然,還 可以是Gecko內(nèi)核、Presto內(nèi)核等等,本發(fā)明實施例對此不加以限制。
[0119]第二瀏覽器內(nèi)核可以為瀏覽器內(nèi)置的除第一瀏覽器內(nèi)核外的其他瀏覽器內(nèi)核,可 以在某些情況適配當(dāng)前網(wǎng)頁的加載,可以為Trident內(nèi)核(即IE內(nèi)核),包括IE-com內(nèi)核(兼 容的IE內(nèi)核)和/或IE-stand內(nèi)核。當(dāng)然,還可以是Gecko內(nèi)核、Presto內(nèi)核等等,本發(fā) 明實施例對此不加以限制。
[0120]當(dāng)前網(wǎng)頁的第一加載請求可以是指用戶發(fā)出的加載某個網(wǎng)頁的指示。例如,用戶 可以通過點擊某鏈接來打開一個網(wǎng)頁,或者在地址欄輸入網(wǎng)址來打開一個網(wǎng)頁等等。當(dāng)用 戶點擊某鏈接的指示時,就相當(dāng)于接收到了用戶加載網(wǎng)頁的加載請求;同樣,當(dāng)在地址欄輸 入某網(wǎng)址并點擊確定按鈕或按下回車鍵時,也相當(dāng)于接收到了用戶加載網(wǎng)頁的加載請求。
[0121]其中,加載請求的內(nèi)容可以包括用戶請求加載的網(wǎng)頁的標(biāo)識和/或網(wǎng)頁的特征。 網(wǎng)頁標(biāo)識可以是能夠代表一個唯一確定的網(wǎng)頁的信息,例如統(tǒng)一資源標(biāo)識符(Uniform Resource Identifier, URI),統(tǒng)一資源標(biāo)識符又具體可以包括統(tǒng)一資源定位符(Uniform Resource Locator, URL),或者統(tǒng)一資源名稱(Uniform Resource Name, URN)等等。
[0122]為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實施例,在本說明書中,將URL作為網(wǎng)頁 的標(biāo)識的一種示例進(jìn)行說明。
[0123]步驟102,當(dāng)判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器 內(nèi)核;
[0124]在具體實現(xiàn)中,獲知用戶請求的網(wǎng)頁與瀏覽器內(nèi)核之間的適配關(guān)系(即當(dāng)前網(wǎng)頁 適于采用哪個瀏覽器內(nèi)核進(jìn)行加載)的方法可以有多種。
[0125]其中一種方法,可以根據(jù)從請求信息獲得的內(nèi)容以及預(yù)置規(guī)則,獲知用戶請求的 網(wǎng)頁與所述瀏覽器內(nèi)核之間的適配關(guān)系。
[0126]具體而言,預(yù)置規(guī)則可以包括特定適配規(guī)則、通用適配規(guī)則和/或不適配規(guī)則,在 請求加載網(wǎng)頁的過程中,可以根據(jù)特定適配規(guī)則、通用適配規(guī)則和/或不適配規(guī)則,獲知用 戶請求的網(wǎng)頁與瀏覽器內(nèi)核之間的適配關(guān)系。其中,特定適配規(guī)則可以包括網(wǎng)頁與瀏覽器 內(nèi)核之間的適配關(guān)系,通用適配規(guī)則可以包括為用戶選擇平均加載速度最快的瀏覽器內(nèi)核 或為用戶選擇對網(wǎng)絡(luò)標(biāo)準(zhǔn)支持最好的瀏覽器內(nèi)核,不適配規(guī)則可以包括網(wǎng)頁與瀏覽器內(nèi)核 之間的不適配關(guān)系。
[0127]由于瀏覽器還會根據(jù)接收到的加載請求向?qū)?yīng)的服務(wù)器發(fā)送關(guān)于加載網(wǎng)頁的加 載請求信息,服務(wù)器會針對加載請求信息返回響應(yīng)信息,在響應(yīng)信息中會攜帶一些網(wǎng)頁的 頁面內(nèi)容等信息,因此在此種情形下,還可以根據(jù)從服務(wù)器返回的針對加載請求信息的響應(yīng)信息獲得的內(nèi)容以及預(yù)置規(guī)則,重新獲知與用戶請求的網(wǎng)頁適配的瀏覽器內(nèi)核;如果重 新獲知的適配的瀏覽器內(nèi)核與此前基于請求信息獲知的適配瀏覽器內(nèi)核不同,則選擇重新 獲知的適配瀏覽器內(nèi)核加載用戶請求的網(wǎng)頁。
[0128]另外一種方法中,由于瀏覽器還會根據(jù)接收到的加載請求向?qū)?yīng)的服務(wù)器發(fā)送關(guān) 于加載網(wǎng)頁的加載請求信息,服務(wù)器會針對加載請求信息返回響應(yīng)信息,在響應(yīng)信息中會 攜帶一些網(wǎng)頁的頁面內(nèi)容等信息,因此在該方法中,可以直接根據(jù)從服務(wù)器返回的針對加 載請求信息返回的響應(yīng)信息獲取的內(nèi)容以及預(yù)置規(guī)則,獲知用戶請求的網(wǎng)頁與瀏覽器內(nèi)核 之間的適配關(guān)系。
[0129]當(dāng)然,也可以根據(jù)從加載請求獲得的內(nèi)容、從服務(wù)器返回的針對加載請求信息返 回的響應(yīng)信息獲取的內(nèi)容以及預(yù)置規(guī)則,共同獲知用戶請求的網(wǎng)頁與瀏覽器內(nèi)核之間的適 配關(guān)系。
[0130]另外,在使用上述各實施例提供的方法加載網(wǎng)頁時,還可以對加載用戶請求的網(wǎng) 頁的情況進(jìn)行檢測;如果出現(xiàn)符合預(yù)置的瀏覽器內(nèi)核切換條件的現(xiàn)象,則根據(jù)預(yù)置規(guī)則重 新獲知與該網(wǎng)頁適配的瀏覽器內(nèi)核;選擇重新獲知的適配的瀏覽器內(nèi)核加載用戶請求的網(wǎng) 頁。其中,符合預(yù)置的瀏覽器內(nèi)核切換條件的現(xiàn)象可以包括:在加載過程中檢測所加載速度 較慢,或者在加載完畢后檢測到網(wǎng)頁沒有正常顯示,等等。
[0131]當(dāng)判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,便可以啟動所述第二瀏覽器內(nèi) 核對應(yīng)的進(jìn)程。
[0132]步驟103,當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽 器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;
[0133]在切換到第二瀏覽器內(nèi)核后,可以通過第二瀏覽內(nèi)核使用當(dāng)前網(wǎng)頁的URL去發(fā)起 一個新的瀏覽器導(dǎo)航。
[0134]在本發(fā)明的一種優(yōu)選實施例中,所述步驟103具體可以包括如下子步驟:
[0135]子步驟Sll,調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0136]子步驟S12,當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi) 核加載網(wǎng)頁的請求時,提取所述請求中的URL ;
[0137]子步驟S13,判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前 網(wǎng)頁的URL傳輸?shù)剿龅诙g覽器內(nèi)核中;
[0138]子步驟S14,采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二 加載請求。
[0139]本發(fā)明實施例可以在第二瀏覽器內(nèi)核中注冊監(jiān)聽HTTP請求或者HTTPS請求。在 具體實現(xiàn)中,可以在WinInet (是Windows Internet擴(kuò)展應(yīng)用程序編程接口,是專為開發(fā)具 有Internet功能的客戶端應(yīng)用程序而提供的,可以支持HTTP協(xié)議,F(xiàn)TP協(xié)議和GOPHER協(xié) 議)中進(jìn)行一個CinternetSession對象,對每一個監(jiān)聽到的HTTP請求或者HTTPS請求,識 別出該HTTP請求中或者HTTPS請求中的URL。若判斷該URL為當(dāng)前網(wǎng)頁的URL,則依據(jù)當(dāng) 前網(wǎng)頁的URL進(jìn)行IPC( Inter-Process Communication,進(jìn)程間通信,指至少兩個進(jìn)程或線 程間傳送數(shù)據(jù)或信號的一些技術(shù)或方法)將第一瀏覽器內(nèi)核中的URL傳遞給第二瀏覽器內(nèi) 核中。在第二瀏覽器內(nèi)核中依據(jù)該URL進(jìn)行一個基于第一瀏覽器內(nèi)核的HTTP請求。
[0140]步驟104,采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;[0141]第一判斷規(guī)則可以為適用于第二瀏覽器內(nèi)核的攔截IFRAME (HTML標(biāo)簽,作用是文 檔中的文檔,或者浮動的框架)或DIV (HTML標(biāo)簽,可定義文檔中的分區(qū)或節(jié)把文檔分割為 獨(dú)立的、不同的部分)浮層的廣告的攔截規(guī)則。
[0142]在本發(fā)明的一種優(yōu)選實施例中,所述步驟104具體可以包括如下子步驟:
[0143]子步驟S21,采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0144]子步驟S22,當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0145]黑名單中可以記載了過濾元素,即需要攔截的URL鏈接。該URL鏈接可以從當(dāng)前 網(wǎng)頁的源代碼中獲取,該URL鏈接可以以http://開頭,這個鏈接可以是完整的,也可以是 通配的,具有完整的一級域名。
[0146]過濾元素的示例可以如下:
[0147]http://*, guize.com/*, js
[0148]http://www.guize.com/gg/*
[0149]http://ww*.guize.com/gg/tuiguang_0*.swf
[0150]http://c.guize.com/gg/tuiguang.g_01.gif
[0151]http://www.guize.com/guanggao/html
[0152]只要在打開網(wǎng)頁時,頁面中只要存在以上鏈接,該鏈接指示的網(wǎng)頁元素即可被攔 截。
[0153]在實際應(yīng)用時,例如某網(wǎng)站首頁上的一個廣告的URL鏈接地址為http://www.abcl23.com/gg/xiaoyouxi/id=Pffm4Pln4n0.gif,則其的過濾規(guī)則可以是 http://www.abcl23.com/*,或,http://www.abcl23.com/gg/xiaoyouxi/*.gif,或,http://氺.abcl23.com/gg/* 等等。
[0154]這三條過濾元素都可以過濾這個廣告,但http://www.abcl23.com/*過濾的范圍 較廣,容易過濾掉其他非廣告內(nèi)容。過濾元素越具體,過濾廣告的效果也就越有效。
[0155]和/ 或,
[0156]子步驟S23,采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0157]子步驟S24,當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0158]一些網(wǎng)頁元素在過濾的同時可能會過濾掉非廣告的網(wǎng)頁元素。此時就需要再添加 一些例外元素,從而保證在過濾廣告的網(wǎng)頁元素的同時,非廣告的網(wǎng)頁元素不被過濾。此例 外元素具體可以記載在白名單上,而白名單的優(yōu)先級可以高于黑名單的優(yōu)先級。
[0159]其中,例外元素的格式和過濾元素可以相同,例如想過濾http: //www.gize.com/gg/*下的網(wǎng)頁元素,但同時不想過濾http://www.guize.com/gg/tui jian.js,則設(shè) http://www.guize.com/gg/tui jian.js 為例外元素,效果為過濾 guize.com/ gg 下的所有 網(wǎng)頁元素,但tuijian.js這個網(wǎng)頁元素除外。
[0160]在實際應(yīng)用中,黑名單和白名單可以單個使用,也可以組合使用,具體可以采用正 則表達(dá)式進(jìn)行黑名單和/或白名單的匹配。
[0161]正則表達(dá)式是用于進(jìn)行文本匹配的工具,通常由一些普通字符和一些元字符 (metacharacters)組成。普通字符包括大小寫的字母和數(shù)字,而元字符則具有特殊的含義。 正則表達(dá)式的匹配可以理解為,在給定的字符串中,尋找與給定的正則表達(dá)式相匹配的部 分。有可能字符串里有不止一個部分滿足給定的正則表達(dá)式,這時每一個這樣的部分被稱為一個匹配。匹配在本文里可以包括三種含義:一種是形容詞性的,比如說一個字符串匹配 一個表達(dá)式;一種是動詞性的,比如說在字符串里匹配正則表達(dá)式;還有一種是名詞性的, 就是剛剛說到的“字符串中滿足給定的正則表達(dá)式的一部分”。
[0162]以下通過舉例對正則表達(dá)式的生成規(guī)則進(jìn)行說明。
[0163]假設(shè)要查找hi,則可以使用正則表達(dá)式hi。這個正則表達(dá)式可以精確匹配這樣的 字符串:由兩個字符組成,前一個字符是h,后一個是i。在實際中,正則表達(dá)式是可以忽略 大小寫的。如果很多單詞里都包含hi這兩個連續(xù)的字符,比如him, history, high等等。 用hi來查找的話,這此單詞里面的hi也會被找出來。如果要精確地查找hi這個單詞的話, 則應(yīng)該使用\bhi\b。
[0164]其中,\b是正則表達(dá)式的一個元字符,它代表著單詞的開頭或結(jié)尾,也就是單詞的 分界處。雖然通常英文的單詞是由空格或標(biāo)點符號或換行來分隔的,但是\b并不匹配這些 單詞分隔符中的任何一個,它只匹配一個位置。
[0165]假如要找的是hi后面不遠(yuǎn)處跟著一個Lucy,貝U應(yīng)該用\bhi\b.*\bLucy\b。其 中,.是另一個元字符,匹配除了換行符以外的任意字符。*同樣是元字符,它代表的是 數(shù)量——即指定*前邊的內(nèi)容可以連續(xù)重復(fù)出現(xiàn)任意次以使整個表達(dá)式得到匹配?,F(xiàn)在 \bhi\b.*\bLucy\b的意思就很明顯了:先是一個單詞hi,然后是任意個任意字符(但不能 是換行),最后是Lucy這個單詞。
[0166]本發(fā)明的第一判斷規(guī)則可以為黑名單和/或白名單,基于網(wǎng)頁的URL進(jìn)行正則表 達(dá)式的匹配,操作簡便、快捷,占用系統(tǒng)資源少。
[0167]步驟105,當(dāng)查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0168]當(dāng)查找到時,可以判定該需要攔截的網(wǎng)頁元素為廣告,則可以對其進(jìn)行攔截。
[0169]在本發(fā)明的一種優(yōu)選實施例中,所述步驟105具體可以包括如下子步驟:
[0170]子步驟S31,返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0171]子步驟S32,采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0172]子步驟S33,采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0173]在一種情形中,可以采用第二瀏覽器內(nèi)核錯誤碼替換被攔截的網(wǎng)頁元素。錯誤碼 可以為HTTP狀態(tài)碼中的請求錯誤(4字頭),這類的狀態(tài)碼代表了客戶端看起來可能發(fā)生了 錯誤,妨礙了服務(wù)器的處理。例如404Not Found,即請求失敗,請求得到的網(wǎng)頁元素未被在 服務(wù)器上發(fā)現(xiàn);400NotReqUest,即語義有誤,當(dāng)前請求無法被服務(wù)器理解,或者,請求參數(shù) 有誤;405Method Not Allowed,即請求行中指定的請求方法不能被用于請求相應(yīng)的資源,
坐坐 寸寸o
[0174]但是,錯誤碼在網(wǎng)頁上會顯示“X”形的圖標(biāo),為了網(wǎng)頁更加美觀,可以使用透明圖 像數(shù)據(jù),例如1*1像素的PNG圖片替換被攔截的網(wǎng)頁元素。
[0175]DOM (文件對象模型,Document Object Model)是處理可擴(kuò)展置標(biāo)語言的標(biāo)準(zhǔn)編程 接口。DOM可以以一種獨(dú)立于平臺和語言的方式訪問和修改一個文檔的內(nèi)容和結(jié)構(gòu),是表示 和處理一個HTML或XML文檔的常用方法。
[0176]DOM實際上是以面向?qū)ο蠓绞矫枋龅奈臋n模型。DOM定義了表示和修改文檔所需 的對象、這些對象的行為和屬性以及這些對象之間的關(guān)系。可以把DOM認(rèn)為是頁面上數(shù)據(jù) 和結(jié)構(gòu)的一個樹形表示,不過頁面當(dāng)然可能并不是以這種樹的方式具體實現(xiàn)。[0177]通過JavaScript可以重構(gòu)整個HTML文檔,可以添加、移除、改變或重排頁面上的項目。
[0178]要改變頁面的某個東西,JavaScript就需要獲得對HTML文檔中所有元素進(jìn)行訪問的入口。這個入口,連同對HTML元素進(jìn)行添加、移動、改變或移除的方法和屬性,都是通過文檔對象模型來獲得的(D0M)。
[0179]可以將HTML文檔視作樹結(jié)構(gòu),而這種結(jié)構(gòu)被稱為節(jié)點樹(THML D0M)?通過HTML D0M,樹中的所有節(jié)點均可通過JavaScript進(jìn)行訪問。所有HTML元素(節(jié)點)均可被修改, 也可以創(chuàng)建或刪除節(jié)點。
[0180]節(jié)點樹中的節(jié)點彼此擁有層級關(guān)系??梢圆捎酶?parent)、子(child)和同胞 (sibling)等術(shù)語用于描述這些關(guān)系。其中,父節(jié)點擁有子節(jié)點。同級的子節(jié)點被稱為同胞 (兄弟或姐妹)。在節(jié)點樹中,頂端節(jié)點被稱為根(root)。每個節(jié)點都有父節(jié)點、除了根(它沒有父節(jié)點)。一個節(jié)點可擁有任意數(shù)量的子,同胞是擁有相同父節(jié)點的節(jié)點。
[0181]具體可以通過若干種方法在節(jié)點樹來查找希望操作的網(wǎng)頁元素:
[0182]例如,可以通過使用getElementByldO 和 getElementsByTagName ()方法進(jìn)行查找。
[0183]又例如,可以通過使用一個元素節(jié)點的parentNode、firstChild以及IastChild屬性。
[0184]其中,getElementByldO和 getElementsByTagName ()這兩種方法,可查找整個 HTML文檔中的任何HTML元素。而這兩種方法會忽略文檔的結(jié)構(gòu)。假如查找文檔中所有的 〈P〉元素,getElementsByTagName ()會把它們?nèi)空业?不管〈P〉元素處于文檔中的哪個層次。同時,getElementByldO方法也會返回正確的元素,不論它被隱藏在文檔結(jié)構(gòu)中的什么位置。這兩種方法會提供任何所需要的HTML元素,不論它們在文檔中所處的位置。
[0185]此外,getElem entByldO可通過指定的ID來返回網(wǎng)頁元素。
[0186]或者,
[0187]子步驟S34,采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0188]子步驟S35,采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為 true ;
[0189]CSS0
[0190]在另外一種情形中,在確定需要攔截的網(wǎng)頁元素的DOM元素節(jié)點后,可以通過第二瀏覽器內(nèi)核采用CSS(Cascading Style Sheet,級聯(lián)樣式,表是一種用來表現(xiàn)HTML或XML 等文件樣式的計算機(jī)語言)選擇器(Selector)將其透明屬性改為“true”,對其進(jìn)行隱藏。
[0191]或者,
[0192]子步驟S36,采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0193]子步驟S37,刪除所述DOM元素節(jié)點。
[0194]在另外一種情形中,在確定需要攔截的網(wǎng)頁元素的DOM元素節(jié)點后,可以通過第二瀏覽器內(nèi)核直接將該DOM元素節(jié)點刪除。
[0195]在對需要攔截的網(wǎng)頁元素進(jìn)行攔截處理后,可以形成新的stylesheet (樣式表), 可以通過第二瀏覽器內(nèi)核采用該新的stylesheet重新渲染加載當(dāng)前網(wǎng)頁,進(jìn)而將該網(wǎng)頁元素,即廣告進(jìn)行攔截。[0196]本發(fā)明通過在一個瀏覽器中至少集成兩個瀏覽器內(nèi)核,基于每個瀏覽器都有自身 的優(yōu)缺點,在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動第二瀏覽器內(nèi)核加載當(dāng) 前網(wǎng)頁,可以提高加載網(wǎng)頁的效率。在采用第二瀏覽器內(nèi)核加載當(dāng)前網(wǎng)頁時,采用適于第二 瀏覽器內(nèi)核的廣告攔截規(guī)則進(jìn)行廣告的攔截,避免了多內(nèi)核瀏覽器在內(nèi)核切換時對廣告攔 截的無序性、攔截規(guī)則的不通用性導(dǎo)致的實用性差,提高了廣告攔截的效率和成功率,實用 性強(qiáng),將廣告攔截后減少系統(tǒng)資源的占用,提高網(wǎng)頁加載效率。
[0197]參照圖2,示出了根據(jù)本發(fā)明一個實施例的一種網(wǎng)頁廣告的攔截方法實施例2的 步驟流程圖,具體可以包括如下步驟:
[0198]步驟201,在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;
[0199]步驟202,當(dāng)判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采用預(yù)置的第二判斷 規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0200]第二判斷規(guī)則可以為適用于第一瀏覽器內(nèi)核的攔截IFRAME或DIV浮層的廣告的 攔截規(guī)則。
[0201]在本發(fā)明的一種優(yōu)選實施例中,所述步驟202具體可以包括如下子步驟:
[0202]子步驟S41,采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、 瀏覽器提供方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0203]子步驟S42,當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0204]在一種情形中,用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和第三方插 件的攔截名單可以存儲在瀏覽器側(cè)本地。
[0205]用戶自定義的攔截名單可以記載用戶根據(jù)個人行為喜好而進(jìn)行設(shè)定的需要攔截 的URL鏈接,其優(yōu)先級可以為最高。
[0206]瀏覽器提供方的攔截名單可以記載瀏覽器提供方進(jìn)行設(shè)定的需要攔截的URL鏈 接,該URL鏈接可以為接收用戶上傳的用戶自定義的攔截名單所生成的,或者在其基礎(chǔ)上 進(jìn)行補(bǔ)充完善的,還可以是自己定義的,其優(yōu)先度可以較用戶自定義的攔截名單次之。
[0207]第三方插件的攔截名單可以記載第三方插件設(shè)定的需要攔截的URL鏈接,例如 Adblock (ADB), Adblock Plus (ABP)等等,其優(yōu)先級可以為最低。
[0208]在具體實現(xiàn)中,用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和第三方插 件的攔截名單可以單個使用,也可以多個同時按照優(yōu)先級使用。同樣可以采用正則表達(dá)式 在用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和/或第三方插件的攔截名單進(jìn)行 URL的匹配。
[0209]和/ 或,
[0210]子步驟S43,將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0211]子步驟S44,接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng) 頁元素為所述服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方 的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0212]需要說明的是,該服務(wù)器可以為當(dāng)前瀏覽器對應(yīng)的服務(wù)器,也可以是其他指定的 服務(wù)器,本發(fā)明實施例對此不加以限制。
[0213]在此種情形中,用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和第三方插 件的攔截名單可以存儲在瀏覽器側(cè)。[0214]在具體實現(xiàn)中,用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和第三方插 件的攔截名單可以單個使用,也可以多個同時按照優(yōu)先級使用。同樣可以采用正則表達(dá)式 在用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和/或第三方插件的攔截名單進(jìn)行 URL的匹配。
[0215]本發(fā)明的第二判斷規(guī)則可以為用戶自定義的攔截名單、瀏覽器提供方的攔截名單 中和/或第三方插件的攔截名單,判斷形式多樣化,實用性強(qiáng),基于網(wǎng)頁的URL進(jìn)行匹配,操 作簡便、快捷,攔截廣告的準(zhǔn)確率高,占用系統(tǒng)資源少。
[0216]步驟203,當(dāng)查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0217]當(dāng)查找到時,可以判定該需要攔截的網(wǎng)頁元素為廣告,則可以對其進(jìn)行攔截。
[0218]在本發(fā)明的一種優(yōu)選實施例中,所述步驟203具體可以包括如下子步驟:
[0219]子步驟S51,返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0220]子步驟S52,采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0221]子步驟S53,采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0222]在一種情形中,可以通過第一瀏覽器內(nèi)核采用錯誤碼或者透明的圖像數(shù)據(jù)替換被 攔截的網(wǎng)頁元素。
[0223]或者,
[0224]子步驟S54,采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0225]子步驟S55,采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為 true ;
[0226]在另外一種情形中,在確定需要攔截的網(wǎng)頁元素的DOM元素節(jié)點后,可以通過第 一瀏覽器內(nèi)核采用CSS(Cascading Style Sheet,級聯(lián)樣式,表是一種用來表現(xiàn)HTML或XML 等文件樣式的計算機(jī)語言)選擇器(Selector)將其透明屬性改為“true”,對其進(jìn)行隱藏。
[0227]或者,
[0228]子步驟S56,采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0229]子步驟S57,刪除所述DOM元素節(jié)點。
[0230]在另外一種情形中,在確定需要攔截的網(wǎng)頁元素的DOM元素節(jié)點后,可以通過第 一瀏覽器內(nèi)核直接將該DOM元素節(jié)點刪除。
[0231]在對需要攔截的網(wǎng)頁元素進(jìn)行攔截處理后,可以形成新的stylesheet (樣式表), 可以通過第一瀏覽器內(nèi)核采用該新的stylesheet重新渲染加載當(dāng)前網(wǎng)頁,進(jìn)而將該網(wǎng)頁 元素,即廣告進(jìn)行攔截。
[0232]本發(fā)明在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,直接采用第一瀏覽器內(nèi) 核加載當(dāng)前網(wǎng)頁,采用適于第一瀏覽器內(nèi)核的廣告攔截規(guī)則進(jìn)行廣告的攔截,實現(xiàn)了攔截 規(guī)則根據(jù)瀏覽器內(nèi)核切換的動態(tài)轉(zhuǎn)換,實現(xiàn)了多內(nèi)核瀏覽器對廣告的無縫轉(zhuǎn)換攔截,提高 了廣告攔截的效率和成功率,實用性強(qiáng),將廣告攔截后減少系統(tǒng)資源的占用,提高網(wǎng)頁加載 效率。
[0233]對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域 技術(shù)人員應(yīng)該知悉,本發(fā)明實施例并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明實施 例,某些步驟可以采用其他順序或者同時進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書 中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明實施例所必須的。[0234]參照圖3,示出了根據(jù)本發(fā)明一個實施例的一種網(wǎng)頁廣告的攔截裝置實施例的結(jié) 構(gòu)框圖,具體可以包括如下模塊:
[0235]第一加載請求接收模塊301,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁 的第一加載請求;
[0236]第二瀏覽器內(nèi)核啟動模塊302,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加 載時,啟動所述第二瀏覽器內(nèi)核;
[0237]第二加載請求生成模塊303,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng) 頁時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;
[0238]第一網(wǎng)頁元素查找模塊304,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要 攔截的網(wǎng)頁元素;
[0239]第一網(wǎng)頁元素攔截模塊305,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述 網(wǎng)頁元素。
[0240]在本發(fā)明的一種優(yōu)選實施例中,所述裝置還可以包括如下模塊:
[0241]第二頁元素查找模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采 用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0242]第二網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0243]在本發(fā)明的一種優(yōu)選實施例中,所述第二加載請求生成模塊還可以適于:
[0244]調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0245]當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁 的請求時,提取所述請求中的URL ;
[0246]判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳 輸?shù)剿龅诙g覽器內(nèi)核中;
[0247]采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
[0248]在本發(fā)明的一種優(yōu)選實施例中,所述第一網(wǎng)頁元素查找模塊還可以適于:
[0249]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0250]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0251]和/ 或,
[0252]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0253]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0254]在本發(fā)明的一種優(yōu)選實施例中,所述第一網(wǎng)頁元素攔截模塊還可以適于:
[0255]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0256]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0257]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0258]或者,
[0259]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0260]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0261]或者,
[0262]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;[0263]刪除所述DOM元素節(jié)點。
[0264]在本發(fā)明的一種優(yōu)選實施例中,所述第二頁元素查找模塊還可以適于:
[0265]采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供 方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0266]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0267]和/ 或,
[0268]將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0269]接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述 服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中 和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0270]在本發(fā)明的一種優(yōu)選實施例中,所述第二網(wǎng)頁元素攔截模塊還可以適于:
[0271]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0272]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0273]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0274]或者,
[0275]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0276]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0277]或者,
[0278]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0279]刪除所述DOM元素節(jié)點。
[0280]對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān) 之處參見方法實施例的部分說明即可。
[0281]本發(fā)明還提供了一種瀏覽器,具體可以包括如下模塊:
[0282]第一加載請求接收模塊,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第 一加載請求;
[0283]第二瀏覽器內(nèi)核啟動模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載 時,啟動所述第二瀏覽器內(nèi)核;
[0284]第二加載請求生成模塊,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁 時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;
[0285]第一網(wǎng)頁元素查找模塊,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截 的網(wǎng)頁元素;
[0286]第一網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0287]在本發(fā)明的一種優(yōu)選實施例中,所述瀏覽器還可以包括如下模塊:
[0288]第二頁元素查找模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采 用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0289]第二網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0290]在本發(fā)明的一種優(yōu)選實施例中,所述第二加載請求生成模塊還可以適于:[0291]調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0292]當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁 的請求時,提取所述請求中的URL ;
[0293]判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳 輸?shù)剿龅诙g覽器內(nèi)核中;
[0294]采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
[0295]在本發(fā)明的一種優(yōu)選實施例中,所述第一網(wǎng)頁元素查找模塊還可以適于:
[0296]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0297]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0298]和/ 或,
[0299]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0300]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0301]在本發(fā)明的一種優(yōu)選實施例中,所述第一網(wǎng)頁元素攔截模塊還可以適于:
[0302]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0303]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0304]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0305]或者,
[0306]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0307]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0308]或者,
[0309]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0310]刪除所述DOM元素節(jié)點。
[0311]在本發(fā)明的一種優(yōu)選實施例中,所述第二頁元素查找模塊還可以適于:
[0312]采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供 方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0313]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0314]和/ 或,
[0315]將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0316]接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述 服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中 和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0317]在本發(fā)明的一種優(yōu)選實施例中,所述第二網(wǎng)頁元素攔截模塊還可以適于:
[0318]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0319]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0320]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0321]或者,
[0322]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0323]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0324]或者,[0325]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0326]刪除所述DOM元素節(jié)點。
[0327]在此提供的算法和顯示不與任何特定計算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。 各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求 的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種 編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā) 明的最佳實施方式。
[0328]在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施 例可以在沒有這些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu) 和技術(shù),以便不模糊對本說明書的理解。
[0329]類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在 上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施 例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保 護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面 的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此, 遵循【具體實施方式】的權(quán)利要求書由此明確地并入該【具體實施方式】,其中每個權(quán)利要求本身 都作為本發(fā)明的單獨(dú)實施例。
[0330]本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地 改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單 元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或 子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任 何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的 任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的 權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來 代替。
[0331]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例 中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的 范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實施例的任 意之一都可以以任意的組合方式來使用。
[0332]本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運(yùn)行 的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用 微處理器或者數(shù)字信號處理器(DSP )來實現(xiàn)根據(jù)本發(fā)明實施例的網(wǎng)頁廣告的攔截設(shè)備中的 一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法 的一部分或者全部的設(shè)備或者裝置程序(例如,計算機(jī)程序和計算機(jī)程序產(chǎn)品)。這樣的實 現(xiàn)本發(fā)明的程序可以存儲在計算機(jī)可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。 這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式 提供。
[0333]應(yīng)該注意的是上述實施例對本發(fā)明進(jìn)行說明而不是對本發(fā)明進(jìn)行限制,并且本領(lǐng) 域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在 未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這 樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機(jī)來 實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件 項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為 名稱。
[0334]本發(fā)明公開了 Al、一種網(wǎng)頁廣告的攔截方法,包括:
[0335]在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;
[0336]當(dāng)判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器內(nèi)核;
[0337]當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生 成當(dāng)前網(wǎng)頁的第二加載請求;
[0338]采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0339]當(dāng)查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0340]A2、如Al所述的方法,還包括:
[0341]當(dāng)判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采用預(yù)置的第二判斷規(guī)則查找 當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;
[0342]當(dāng)查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0343]A3、如Al所述的方法,所述當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時, 采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求的步驟包括:
[0344]調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0345]當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁 的請求時,提取所述請求中的URL ;
[0346]判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳 輸?shù)剿龅诙g覽器內(nèi)核中;
[0347]采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
[0348]A4、如Al所述的方法,所述采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的 網(wǎng)頁元素的步驟包括:
[0349]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0350]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0351]和/ 或,
[0352]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0353]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0354]A5、如Al所述的方法,所述采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素的步驟包 括:
[0355]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0356]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0357]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0358]或者,
[0359]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;[0360]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0361]或者,
[0362]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0363]刪除所述DOM元素節(jié)點。
[0364]A6、如A2所述的方法,所述采用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的 網(wǎng)頁元素的步驟包括:
[0365]采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供 方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0366]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0367]和/ 或,
[0368]將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0369]接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述 服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中 和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0370]A7、如A2所述的方法,所述采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素的步驟包 括:
[0371]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0372]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0373]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0374]或者,
[0375]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0376]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0377]或者,
[0378]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0379]刪除所述DOM元素節(jié)點。
[0380]本發(fā)明還公開了 B8、一種網(wǎng)頁廣告的攔截裝置,包括:
[0381]第一加載請求接收模塊,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第 一加載請求;
[0382]第二瀏覽器內(nèi)核啟動模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載 時,啟動所述第二瀏覽器內(nèi)核;
[0383]第二加載請求生成模塊,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁 時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;
[0384]第一網(wǎng)頁元素查找模塊,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截 的網(wǎng)頁元素;
[0385]第一網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng) 頁元素。
[0386]B9、如B8所述的裝置,還包括:
[0387]第二頁元素查找模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采 用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;[0388]第二網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
[0389]BlO^n B8所述的裝置,所述第二加載請求生成模塊還適于:
[0390]調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;
[0391]當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁的請求時,提取所述請求中的URL ;
[0392]判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳輸?shù)剿龅诙g覽器內(nèi)核中; [0393]采用所述第二瀏覽器內(nèi)核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
[0394]B11、如B8所述的裝置,所述第一網(wǎng)頁元素查找模塊還適于:
[0395]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;
[0396]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0397]和/ 或,
[0398]采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;
[0399]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
[0400]B12、如B8所述的裝置,所述第一網(wǎng)頁元素攔截模塊還適于:
[0401]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;
[0402]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0403]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0404]或者,
[0405]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0406]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0407]或者,
[0408]采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0409]刪除所述DOM元素節(jié)點。
[0410]B13、如B9所述的裝置,所述第二頁元素查找模塊還適于:
[0411]采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;
[0412]當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;
[0413]和/ 或,
[0414]將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);
[0415]接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
[0416]B14、如B9所述的裝置,所述第二網(wǎng)頁元素攔截模塊還適于:
[0417]返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;
[0418]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0419]采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;
[0420]或者,[0421]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0422]采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;
[0423]或者,
[0424]采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;
[0425]刪除所述DOM元素節(jié)點。
[0426]本發(fā)明還公開了 C15、一種瀏覽器,包括B8至B14中任一項所述的網(wǎng)頁廣告的攔截
>J-U裝直。
【權(quán)利要求】
1.一種網(wǎng)頁廣告的攔截方法,包括:在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;當(dāng)判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器內(nèi)核;當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;當(dāng)查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
2.如權(quán)利要求1所述的方法,其特征在于,還包括:當(dāng)判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;當(dāng)查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
3.如權(quán)利要求1所述的方法,其特征在于,所述當(dāng)監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求的步驟包括:調(diào)用網(wǎng)絡(luò)編程接口 WinInet啟動管理會話類CInternetSession ;當(dāng)在所述管理會話類CInternetSession中監(jiān)聽到所述第二瀏覽器內(nèi)核加載網(wǎng)頁的請求時,提取所述請求中的URL;判斷所述請求中的URL與當(dāng)前網(wǎng)頁的URL是否相同;若是,則將當(dāng)前網(wǎng)頁的URL傳輸?shù)剿龅诙g覽器內(nèi)核中;采用所述第二瀏覽器內(nèi) 核針對當(dāng)前網(wǎng)頁的URL生成當(dāng)前網(wǎng)頁的第二加載請求。
4.如權(quán)利要求1所述的方法,其特征在于,所述采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素的步驟包括:采用當(dāng)前網(wǎng)頁的URL在預(yù)置的黑名單中進(jìn)行匹配;當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;和/或,采用當(dāng)前網(wǎng)頁的URL在預(yù)置的白名單中進(jìn)行匹配;當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素不為需要攔截的網(wǎng)頁元素。
5.如權(quán)利要求1所述的方法,其特征在于,所述采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素的步驟包括:返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第二瀏覽器內(nèi)核;采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;或者,采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;或者,采用所述第二瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;刪除所述DOM元素節(jié)點。
6.如權(quán)利要求2所述的方法,其特征在于,所述采用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素的步驟包括:采用當(dāng)前網(wǎng)頁的URL在瀏覽器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和/或第三方插件的攔截名單中進(jìn)行匹配;當(dāng)匹配成功時,判定匹配成功的網(wǎng)頁元素為需要攔截的網(wǎng)頁元素;和/或,將當(dāng)前網(wǎng)頁的URL發(fā)送至服務(wù)器側(cè);接收所述服務(wù)器側(cè)返回的需要攔截的網(wǎng)頁元素;所述需要攔截的網(wǎng)頁元素為所述服務(wù)器側(cè)采用在服務(wù)器側(cè)本地預(yù)置的用戶自定義的攔截名單、瀏覽器提供方的攔截名單中和/ 或第三方插件的攔截名單中進(jìn)行匹配,并匹配成功的網(wǎng)頁元素。
7.如權(quán)利要求2所述的方法,其特征在于,所述采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素的步驟包括:返回錯誤碼或者透明的圖像數(shù)據(jù)至所述第一瀏覽器內(nèi)核;采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;采用所述錯誤碼或者透明的圖像數(shù)據(jù)替換所述DOM元素節(jié)點;或者,采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;采用CSS的選擇器將所述DOM元素節(jié)點的CSS屬性中的透明屬性改為true ;或者,采用所述第一瀏覽器內(nèi)核確定所述網(wǎng)頁元素的對應(yīng)的DOM元素節(jié)點;`刪除所述DOM元素節(jié)點。
8.—種網(wǎng)頁廣告的攔截裝置,包括:第一加載請求接收模塊,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;第二瀏覽器內(nèi)核啟動模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器內(nèi)核;第二加載請求生成模塊,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;第一網(wǎng)頁元素查找模塊,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;第一網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
9.如權(quán)利要求8所述的裝置,其特征在于,還包括:第二頁元素查找模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第一瀏覽器內(nèi)核加載時,采用預(yù)置的第二判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;第二網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第一瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
10.一種瀏覽器,包括:第一加載請求接收模塊,適于在瀏覽器側(cè)采用第一瀏覽器內(nèi)核接收當(dāng)前網(wǎng)頁的第一加載請求;第二瀏覽器內(nèi)核啟動模塊,適于在判定當(dāng)前網(wǎng)頁適于采用第二瀏覽器內(nèi)核加載時,啟動所述第二瀏覽器內(nèi)核;第二加載請求生成模塊,適于在監(jiān)聽到所述第二瀏覽器內(nèi)核請求加載當(dāng)前網(wǎng)頁時,采用所述第一瀏覽器內(nèi)核生成當(dāng)前網(wǎng)頁的第二加載請求;第一網(wǎng)頁元素查找模塊,適于采用預(yù)置的第一判斷規(guī)則查找當(dāng)前網(wǎng)頁中需要攔截的網(wǎng)頁元素;第一網(wǎng)頁元素攔截模塊,適于在查找到時,采用所述第二瀏覽器內(nèi)核攔截所述網(wǎng)頁元素。
【文檔編號】G06F17/30GK103605688SQ201310535916
【公開日】2014年2月26日 申請日期:2013年11月1日 優(yōu)先權(quán)日:2013年11月1日
【發(fā)明者】曹龍, 任寰 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
视频| 五莲县| 六安市| 红原县| 泰顺县| 安仁县| 简阳市| 板桥市| 北安市| 嵊泗县| 会泽县| 都匀市| 百色市| 伊宁县| 庆安县| 萝北县| 新巴尔虎左旗| 云浮市| 阿荣旗| 斗六市| 南丹县| 迁西县| 岱山县| 普宁市| 油尖旺区| 洛宁县| 新蔡县| 贵州省| 定州市| 滦南县| 旺苍县| 宜章县| 固安县| 成安县| 宜君县| 江西省| 小金县| 瓮安县| 保德县| 云霄县| 淮阳县|