行處理時,具體可通過如下三種處理方式中的一種或多種進行處理:
[0057]在第一種處理方式中,將掃描結果為異常的BHO插件的狀態設置為禁用。在這種處理方式中,只是將異常的BHO插件的狀態設置為禁用,并沒有將其刪除,因此,當后期需要使用該BHO插件時,還可以將其狀態重新設置為啟用,從而應用該BHO插件的功能。
[0058]在第二種處理方式中,對掃描結果為異常的BHO插件進行卸載。在這種處理方式中,直接將異常的BHO插件永久性刪除,除非重新安裝該BHO插件,否則無法再次啟用該插件。
[0059]在具體執行時,可以根據異常BHO插件的類型來確定執行上述的第一種處理方式或第二種處理方式。結合上面描述的BHO黑名單列表的兩種配置方法可知,異常BHO插件的類型可以分為兩大類,第一大類為實際上處于正常狀態的BHO插件,僅僅因為其加載時間過長而導致瀏覽器響應緩慢,所以才將其確定為掃描結果為異常的BHO插件。第一大類中的BHO插件的主要特點為運行狀態正常,且執行的行為是合法的,具體可以通過監測BHO插件的運行狀態,并分析其行為特征來確定其類型。例如,“輸入法助手”這一BHO插件就會導致打開網頁的速度比較慢,因此,在不需要使用這一插件時可以將其設置為禁用,以便提高訪問速度,僅在使用這一插件時再將其打開。第二大類為真正處于異常狀態的BHO插件,第二大類中的BHO插件的主要特點為運行狀態異常(例如出現了故障),或執行的行為是非法的。通常情況下,對于上述的第一大類中的BHO插件,可以執行上述的第一種處理方式;對于上述的第二大類中的BHO插件,可以執行上述的第二種處理方式。可選地,為了能夠直接根據BHO黑名單列表來區分出冊0插件的異常類型,還可以在配置BHO黑名單列表的同時,根據黑名單列表中的每個BHO插件的特點,為列表中的每個BHO插件設置一個類型標識,用來標識其屬于第一大類或第二大類。
[0060]除了上述兩種處理方式之外,在第三種處理方式中,能夠將掃描結果為異常的BHO插件提示給用戶。也就是說,在第三種處理方式中,并不直接對異常BHO插件進行處理,而是將異常BHO插件的信息提示給用戶,由用戶來決定是否處理以及執行何種處理。由用戶來確定處理方式時,能夠充分尊重用戶的選擇,滿足用戶的需求。
[0061]上述的三種處理方式既可以單獨使用也可以結合使用。除上述三種處理方式外,本領域技術人員還可以靈活應用其他的處理方式對其進行處理,本發明對此不作限定。
[0062]在上述的各個步驟中,通過在瀏覽器打開網頁速度過慢時,對其中加載的各個BHO插件進行掃描的方式,能夠排查出影響瀏覽器運行速度的BHO插件,進而實現優化瀏覽器運行環境,提升運行速度的目的。
[0063]圖2示出了本發明提供的客戶端200的結構圖,該客戶端200用于檢測瀏覽器運行環境。如圖2所示,該客戶端200包括:測試模塊210、判斷模塊220以及掃描模塊230。下面具體介紹一下各個模塊的工作過程:
[0064]測試模塊210用來測試瀏覽器在未加載BHO插件的情況下的第一啟動時間,以及該瀏覽器在加載了BHO插件的情況下的第二啟動時間。其中,測試模塊210的具體工作過程可參照步驟SI 10’中的相應描述,此處不再贅述。
[0065]判斷模塊220用來計算上述的第二啟動時間與第一啟動時間之間的差值,判斷該差值是否大于預設閾值。其中,判斷模塊220的具體工作過程可參照步驟S120’中的相應描述,此處不再贅述。
[0066]掃描模塊230適于當該差值大于預設閾值時,對瀏覽器中加載的每個BHO插件分別進行掃描,并對掃描結果為異常的BHO插件進行處理。
[0067]其中,掃描模塊230進一步包括:遍歷子模塊,適于遍歷注冊表,獲取該瀏覽器中加載的BHO插件的數量以及每個BHO插件的標識信息;確定模塊,適于根據云服務器上預先存儲的BHO黑名單列表,確定該瀏覽器中加載的每個BHO插件的掃描結果是否異常。其中,確定子模塊還可以進一步包括:白名單確定模塊,適于根據預先存儲的BHO白名單列表,確定瀏覽器中加載的每個BHO插件是否屬于該BHO白名單列表,對于屬于該BHO白名單列表的BHO插件,確定其掃描結果正常;對于不屬于該BHO白名單列表的BHO插件,交由黑名單確定模塊處理;黑名單確定模塊,適于根據預先存儲的BHO黑名單列表,確定不屬于該BHO白名單列表的BHO插件的掃描結果是否異常。其中,關于上述的各個模塊及子模塊的具體工作過程可參照方法實施例中相應部分的表述,此處不再贅述。另外,關于上述的BHO黑名單列表的具體獲取方式也可以參照方法實施例中相關部分的描述。而且,為了能夠在本地查詢BHO黑名單列表,該客戶端還可以包括:下載模塊,適于將存儲在云服務器上的BHO黑名單列表下載并存儲到客戶端本地,以便于下次查詢。
[0068]另外,掃描模塊230在對掃描結果為異常的BHO插件進行如下處理時,可通過如下方式中的一種或多種進行處理:將掃描結果為異常的BHO插件的狀態設置為禁用;卸載掃描結果為異常的BHO插件;以及將掃描結果為異常的BHO插件提示給用戶。
[0069]在具體實現時,上述的測試模塊210、判斷模塊220以及掃描模塊230可以通過安裝在客戶端200上的一個優化軟件的形式來實現。
[0070]圖3示出了包含上述的測試模塊210、判斷模塊220以及掃描模塊230的優化軟件在初始階段的界面示意圖。如圖3所示,該優化軟件可以具有多種優化功能,其中,通過點擊界面最下方的“瀏覽器優化”按鈕以及“開始檢測”的圖標即可觸發上述各模塊進行工作。圖4示出了包含上述的測試模塊210、判斷模塊220以及掃描模塊230的優化軟件在運行結束階段的界面示意圖。如圖4所示,在界面下方掃描到的三個結果:“泡泡天氣彈窗組件”、“福橙娛樂平臺”以及“飛火視頻及附帶廣告組件”都是通過本發明實施例描述的方式掃描到的異常BHO插件。如果用戶勾選上述插件并點擊“一鍵加速”即可完成對這些異常BHO插件的處理。
[0071]另外,本領域技術人員還可以對上述的客戶端200的結構劃分方式進行各種變形及調整。下面給出上述客戶端的另一種結構劃分方式:
[0072]該客戶端包括:
[0073]白名單確定模塊,適于根據預先存儲的BHO白名單列表,確定所述瀏覽器中加載的每個BHO插件是否屬于所述BHO白名單列表,對于屬于所述BHO白名單列表的BHO插件,確定其掃描結果正常;對于不屬于所述BHO白名單列表的BHO插件,交由黑名單確定模塊處理;
[0074]黑名單確定模塊,適于根據所述預先存儲的BHO黑名單列表,確定不屬于所述BHO白名單列表的BHO插件的掃描結果是否異常,并對掃描結果為異常的BHO插件進行處理;具體處理時,可以對掃描結果為異常的BHO插件進行如下處理方式中的一種或多種:將掃描結果為異常的BHO插件的狀態設置為禁用;卸載掃描結果為異常的BHO插件;以及將掃描結果為異常的BHO插件提示給用戶;
[0075]其中,所述BHO黑名單列表存儲在服務器上,且所述BHO黑名單列表是由所述服務器直接根據客戶端反饋的異常BHO插件的標識信息進行配置并更新的;和/或,所述BHO黑名單列表是由所述服務器在根據客戶端反饋的BHO插件加載時間確定出異常BHO插件的標識信息后進行配置并更新的。
[0076]可選地,該客戶端進一步包括:遍歷模塊,適于遍歷注冊表,獲取所述瀏覽器中加載的BHO插件的數量以及每個BHO插件的標識信息。可選地,該客戶端進一步包括:下載模塊,適于將存儲在服務器上的BHO黑名單列表下載并存儲到客戶端本地。
[0077]可選地,該客戶端進一步包括:測試模塊,適于測試所述瀏覽器在未加載BHO插件的情況下的第一啟動時間,以及所述瀏覽器在加載了BHO插件的情況下的第二啟動時間;判斷模塊,適于計算所述第二啟動時間與所述第一啟動時間之間的差值,判斷所述差值是否大于預設閾值,并在所述差值大于所述預設閾值時,通知所述白名單確定模塊進行處理。其中,所述測試模塊適于以調用extoff參數的方式啟動瀏覽器,通過瀏覽器打開預定網頁,并通過COM接口來獲取瀏覽器打開所述預定網頁的時間,作為第一啟動時間;以不調用參數的方式啟動瀏覽器,通過瀏覽器打開所述預定網頁,并通過COM接口來獲取瀏覽器打開所述預定網頁的時間,作為第二啟動時間。
[0078]本發明還提供了一種服務器,該服務器能夠用于檢測瀏覽器運行環境。并且,優選地,該服務器為云服務器。圖5示出了云服務器300的結構示意圖,如圖5所示,該云服務器300包括:配置模塊310和查詢模塊320。
[0079]其中,配置模塊310用來在運營過程中根據客戶端的反饋信息配置并存儲BHO黑名單列表。
[0080]具體地,配置模塊310可以直接根據客戶端反饋的異常BHO插件的標識信息配置并更新BHO黑名單列表。此時,該BHO黑名單列表是由配置模塊310直接根據客戶端反饋的異常BHO插件的標識信息進行配置并更新的。在這種方式中,客戶端反饋異常BHO插件的標識信息時可以通過多種方式進行反饋,例如,可以由客戶端在運行過程中通過各種方式來發現異常BHO插件(例如由用戶主動判斷或通過一些查詢工具進行判斷);或者,也可以由用戶在發現電腦運行異常時向運營商反饋,由運營商派出工程師上門維修,在此過程中,如果工程師發現了異常BHO插件則可以通過客戶端將這一異常BHO插件反饋給云服務器中的配置模塊 310。
[0081]另外,配置模塊310還可以在根據客戶端反饋的BHO插件加載時間確定出異常BHO插件的標識信息后配置并更新BHO黑名單列表。此時,該BHO黑名單列表是由配置模塊310在根據客戶端反饋的BHO插件加載時間確定出異常BHO插件的標識信息后進行配置并更新的。具體地,可以由各個客戶端在每次開啟瀏覽器時將