圖片的裝置的優(yōu)選實施例示意圖。
【具體實施方式】
[0062]下面結合附圖和具體的實施方式對本發(fā)明作進一步詳細的描述。
[0063]圖1為本發(fā)明的以瀑布流方式顯示圖片的方法流程圖。
[0064]本發(fā)明提供了一種以瀑布流方式顯示圖片的方法,包括:
[0065]步驟SlOl、通過瀑布流加載器選擇瀑布流的加載方式并獲取加載數(shù)據(jù);
[0066]步驟S102、數(shù)據(jù)管理器將瀑布流加載器獲取的加載數(shù)據(jù)進行格式化;
[0067]步驟S103、瀑布流渲染器對數(shù)據(jù)管理器格式化后的數(shù)據(jù)進行渲染。
[0068]下面對各個步驟進行詳細說明。
[0069]步驟S101、通過瀑布流加載器選擇瀑布流的加載方式并獲取加載數(shù)據(jù)。
[0070]調(diào)用不同的瀑布流的方式包括但不限于:頻道瀑布流調(diào)用方式或搜索瀑布流調(diào)用方式。
[0071]好搜探索的首頁頻道推薦采用的是頻道瀑布流調(diào)用方式,其通過瀑布流向用戶展示不同的推薦頻道。而搜索瀑布流調(diào)用方式則對應于搜索詞查詢后的瀑布流結果的顯示。頻道瀑布流和搜索瀑布流分屬于兩個不同的瀑布流,兩種調(diào)用方式是分別調(diào)用的,不會在一個場景下重疊調(diào)用。
[0072]所述瀑布流的加載方式包括:自動加載、手動加載、手動加載η次之后自動加載、η次自動加載之后需手動加載一次。
[0073]所述瀑布流加載器選擇瀑布流的加載方式包括:
[0074]通過傳遞參數(shù)的方式來自動選擇不同的加載方式。所述參數(shù)對應于上述自動加載、手動加載、手動加載η次之后自動加載、η次自動加載之后需手動加載一次的加載方式。其中,手動加載η次之后自動加載的方式說明用戶希望一直瀏覽頁面,因此轉為自動加載的方式更加適合用戶的需求。而η次自動加載之后需手動加載一次的加載方式則適合于用戶僅需在前面若干頁面中查詢或瀏覽的需求。
[0075]步驟S102、數(shù)據(jù)管理器將瀑布流加載器獲取的加載數(shù)據(jù)進行格式化。
[0076]所述數(shù)據(jù)管理器負責將瀑布流加載器獲取的加載數(shù)據(jù)進行格式化包括:
[0077]利用數(shù)據(jù)管理器將不同的數(shù)據(jù)類型格式轉換成相同的預定格式。
[0078]由于圖搜的數(shù)據(jù)會有幾種不同的類型,因此數(shù)據(jù)管理器將不同類型的數(shù)據(jù)轉換成相同的預定格式更加便于管理和加載,并且進而將格式化后的數(shù)據(jù)存儲到數(shù)據(jù)庫中。
[0079]瀑布流的展現(xiàn)方式比起翻頁用戶體驗性更好,只是會存在數(shù)據(jù)重復的問題:瀑布流加載下一頁的時候,如果剛好數(shù)據(jù)有更新,那么下一頁前面的數(shù)據(jù)就會和上一頁后面的數(shù)據(jù)重復,降低了用戶體驗。
[0080]數(shù)據(jù)去重的辦法具體包括如下幾種:
[0081]1、服務端數(shù)據(jù)緩存
[0082]—次性讀取N頁的數(shù)據(jù)緩存起來,而后N頁內(nèi)的數(shù)據(jù)都從緩存里讀取,N頁外的數(shù)據(jù)按正常分頁獲取。
[0083]這里的N值,優(yōu)選的設為10,可以根據(jù)自己站點的實際情況修改。
[0084]缺點:一次性讀取N頁的數(shù)據(jù),第一次讀取會比較慢,緩存起來也浪費些存儲空間,不過這個問題比較小,畢竟現(xiàn)在的硬盤和內(nèi)存都比較大,關鍵的還是N頁以后的數(shù)據(jù)無法保證不重復。
[0085]2、客戶端排除
[0086]客戶端記錄已經(jīng)加載的數(shù)據(jù),再次加載的時候過濾掉已有的數(shù)據(jù)。
[0087]優(yōu)點:出現(xiàn)重復的時候最多少一些數(shù)據(jù),用戶感覺不出來,如果重復比較多,可以考慮再加載下一頁的數(shù)據(jù)。
[0088]缺點:出現(xiàn)重復的數(shù)據(jù)時,加載的數(shù)據(jù)不足,比如原先要加載20條,結果有2條重復,就只剩下18條。
[0089]3、增加排序參數(shù)的傳遞
[0090]在獲取數(shù)據(jù)時,客戶端傳入最后一條數(shù)據(jù)的排序字段的數(shù)值,在獲取數(shù)據(jù)時根據(jù)該值進行篩選。
[0091]這個方式在3種辦法中操作是最簡單的,也是最容易實現(xiàn)的。不過缺點就是適用面比較窄:只適合排序的字段值不會重復,并且不會被修改。
[0092]4、指定不可重復的字段
[0093]在數(shù)據(jù)管理器中,通過指定不可重復的字段的方式對數(shù)據(jù)進行自動去重,從而有效避免了冗余的重復數(shù)據(jù)加載到瀑布流中造成的資源浪費和效率低下。
[0094]步驟S103、瀑布流渲染器對數(shù)據(jù)管理器格式化后的數(shù)據(jù)進行渲染。
[0095]所述瀑布流渲染器對數(shù)據(jù)管理器格式化后的數(shù)據(jù)進行渲染還包括:
[0096]對數(shù)據(jù)管理器格式化后的數(shù)據(jù)進行預渲染。
[0097]所述對數(shù)據(jù)管理器格式化后的數(shù)據(jù)進行預渲染包括:
[0098]首先判斷所述格式化后的數(shù)據(jù)是否滿足預渲染條件;
[0099]如果所述格式化后的數(shù)據(jù)中有至少一個數(shù)據(jù)滿足所述預渲染條件,則所述瀑布流渲染器對所述至少一個數(shù)據(jù)進行預渲染。
[0100]瀏覽器在瀑布流的展現(xiàn)頁面中展現(xiàn)多個搜索結果,并對多個搜索結果中的至少一個搜索結果進行預渲染。在本發(fā)明的實施例中,預渲染可理解為在用戶看到頁面的展現(xiàn)之前,就完成了頁面的渲染。
[0101 ]本發(fā)明實施例的對搜索結果的處理方法,先獲取搜索詞對應的多個搜索結果,以及在展現(xiàn)頁面中展現(xiàn)該多個搜索結果,并對該多個搜索結果中的至少一個搜索結果進行預渲染,即有選擇地對搜索結果進行預渲染,提高對用戶的響應速度,同時,增加資源利用效率,使得用戶在每次尋找信息的過程中節(jié)省了等待時間,提升了用戶體驗。
[0102]圖2為本發(fā)明中判斷搜索結果是否滿足預渲染條件的方法流程圖。
[0103]在本發(fā)明的實施例中,在對多個搜索結果中的至少一個搜索結果進行預渲染之前,還需判斷該多個搜索結果是否滿足預渲染條件。具體地,如圖2所示,該對搜索結果的處理方法包括:
[0104]S201,瀏覽器獲取搜索詞,并獲取搜索詞對應的多個搜索結果。
[0105]具體地,當用戶在搜索引擎中輸入搜索詞時,瀏覽器可先獲取用戶輸入的搜索詞,并獲取搜索引擎根據(jù)該搜索詞生成的多個搜索結果。
[0106]S202,瀏覽器在瀑布流展現(xiàn)頁面中展現(xiàn)多個搜索結果。
[0107]其中,在本發(fā)明的實施例中,展現(xiàn)頁面可理解為瀏覽器前端的展示頁面。
[0108]S203,判斷多個搜索結果是否滿足預渲染條件。
[0109]具體而言,搜索引擎可先獲取搜索詞對應的搜索詞屬性信息、多個搜索結果對應的站點信息和用戶的歷史搜索記錄信息等中的一種或多種。之后,可根據(jù)搜索詞屬性信息、站點信息和歷史搜索記錄信息中的一種或多種判斷該多個搜索結果是否滿足預渲染條件。也就是說,搜索引擎可根據(jù)搜索詞、搜索結果、搜索詞的匹配程度、用戶的歷史搜索記錄以及其他關鍵信息等,判斷是否給瀏覽器相關的信息,比如,告知瀏覽器哪條或者哪幾條搜索結果是用戶最希望看到并最有可能點擊的。
[0110]其中,在本發(fā)明的實施例中,搜索詞屬性信息可包括搜索詞類型、搜索詞對應的時效性信息等中的一種或多種,站點信息可包括站點類型、站點點擊數(shù)量、站點權重等中的一種或多種,歷史搜索記錄可包括用戶在搜索引擎上的歷史點擊行為記錄、用戶的搜索習慣信息、用戶針對搜索結果的歷史點擊記錄等中的一種或多種。
[0111]另外,每個用戶都有各自的搜索詞輸入習慣、使用搜索引擎的習慣、網(wǎng)頁瀏覽的習慣。本發(fā)明實施例的對搜索結果的處理方法所應用的推薦算法模型中,可綜合考慮搜索詞的類型、搜索詞相關的時效性、搜索詞搜索結果的歷史點擊率、用戶的搜索詞的輸入習慣、用戶在搜索引擎上的歷史點擊行為等,以判斷展現(xiàn)的多個搜索結果是否滿足預渲染條件。
[0112]舉例而言,在本發(fā)明的實施例中,當搜索詞對應的搜索詞類型為尋址類型時,預渲染條件可為對官方站點、已認證站點、點擊數(shù)量最大的站點、權重最高的站點等中的一個或多個進行預渲染;或者,當搜索詞對應的搜索詞類型為問答類型時,預渲染條件可對為知識問答類站點、點擊數(shù)量最大的站點、權重最高的站點等中的一個或多個進行預渲染;或者,當搜索詞具有時效性信息時,預渲染條件可對為新聞類聚合站點、點擊數(shù)量最大的站點、權重最高的站點等中的一個或多個進行預渲染;或者,當搜索詞對應的搜索詞類型具有多個時,預渲染條件可為對用戶在搜索引擎上的歷史點擊行為記錄中的站點、用戶針對搜索結果的歷史點擊記錄中的站點等中的一個或多個進行預渲染。
[0113]S204,如果多個搜索結果中的至少一個搜索結果滿足預渲染條件,則瀏覽器對至少一個搜索結果進行預渲染。
[0114]所述瀑布流渲染器對數(shù)據(jù)管理器格式化后的數(shù)據(jù)進行渲染包括:
[0115]將數(shù)據(jù)管理器格式