本申請涉及計算機技術(shù)領(lǐng)域,具體涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及用于推送信息的方法和裝置。
背景技術(shù):
信息推送,又稱為“網(wǎng)絡廣播”,是通過一定的技術(shù)標準或協(xié)議,在互聯(lián)網(wǎng)上通過推送用戶需要的信息來減少信息過載的一項技術(shù)。信息推送技術(shù)通過主動推送信息給用戶,可以減少用戶在網(wǎng)絡上搜索所花的時間。
目前,向用戶推送信息的方法層出不窮?,F(xiàn)有的互聯(lián)網(wǎng)公司通常會將待推送信息插入用戶訂閱的其它信息中進行推送,因此當用戶在搜索或瀏覽其所訂閱的信息時,可以接收到上述的待推送信息。例如,當用戶通過rss(reallysimplesyndication,簡易信息聚合)訂閱技術(shù)等訂閱新聞和熱點事件時,可以在用戶訂閱的新聞和熱點事件中插入廣告信息等待推送信息,以便于用戶在查閱新聞和熱點事件時可以接收到廣告等待推送信息。在采用現(xiàn)有的信息推送技術(shù)向用戶推送信息時,由于被插入用戶訂閱的信息中的待推送信息具有一定的優(yōu)先級,這會造成被插入用戶訂閱的信息中的某一待推送信息被重復地推送給該用戶,造成了網(wǎng)絡資源的浪費。
技術(shù)實現(xiàn)要素:
本申請的目的在于提出一種改進的用于推送信息的方法和裝置,來解決以上背景技術(shù)部分提到的技術(shù)問題。
第一方面,本申請實施例提供了一種用于推送信息的方法,該方法包括:獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息;從預設(shè)的第一待推送信息庫中剔除第一待剔除信息以生成第二待推送信息庫,其中,該第一待剔除信息為第一待推送信息庫中與第一已推送信息相匹配的第一待推送信息;將第二待推送信息庫中的各第二待推送信息排序以生成第三待推送信息隊列;從該第三待推送信息隊列中依次獲取至少一個第三待推送信息,并將所獲取的至少一個第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間。
在一些實施例中,上述方法還包括:獲取用戶的行為信息,其中,行為信息基于以下一項或多項得到:搜索信息、點擊信息、訂閱信息和收藏信息;提取行為信息的關(guān)鍵詞,并對關(guān)鍵詞進行擴展以獲取關(guān)鍵詞集合;根據(jù)關(guān)鍵詞集合,從預設(shè)的多個第一信息中獲取多個第一待推送信息以生成第一待推送信息庫。
在一些實施例中,獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息,包括:將用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息緩存到緩存數(shù)據(jù)庫;從緩存數(shù)據(jù)庫獲取各第一已推送信息。
在一些實施例中,從預設(shè)的第一待推送信息庫中剔除第一待剔除信息以生成第二待推送信息庫,包括:將每個第一已推送信息與第一待推送信息庫中的各第一待推送信息做匹配運算,確定相似度大于第一預設(shè)閾值的第一待推送信息為第一待剔除信息;從第一待推送信息庫中剔除第一待剔除信息生成第二待推送信息庫。
在一些實施例中,上述方法還包括:將各第一已推送信息與第二待推送信息庫中的各第二待推送信息做匹配運算,確定相似度大于第二預設(shè)閾值且小于第一預設(shè)閾值的第二待推送信息為第二候選信息;響應于確定第二候選信息的數(shù)量大于第三預設(shè)閾值,剔除多余的第二候選信息以使第二待推送信息庫中的第二候選信息的數(shù)量不超過第三預設(shè)閾值。
第二方面,本申請?zhí)峁┝艘环N用于推送信息的裝置,該裝置包括:獲取模塊,配置用于獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息;剔除模塊,配置用于從預設(shè)的第一待推送信息庫中剔除第一待剔除信息以生成第二待推送信息庫,其中,該第一待剔除信息為第一待推送信息庫中與第一已推送信息相匹配的第一待推送信息;排序模塊,配置用于將第二待推送信息庫中的各第二待推送信息排序以生成第三待推送信息隊列;插入模塊,配置用于從第三待推送信息隊列中依次獲取至少一個第三待推送信息,并將所獲取的至少一個第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間。
在一些實施例中,上述裝置還包括生成模塊,配置用于獲取用戶的行為信息,其中,行為信息基于以下一項或多項得到:搜索信息、點擊信息、訂閱信息和收藏信息;提取行為信息的關(guān)鍵詞,并對關(guān)鍵詞進行擴展以獲取關(guān)鍵詞集合;根據(jù)關(guān)鍵詞集合,從預設(shè)的多個第一信息中獲取多個第一待推送信息以生成第一待推送信息庫。
在一些實施例中,獲取模塊配置具體用于:將用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息緩存到緩存數(shù)據(jù)庫;從緩存數(shù)據(jù)庫獲取各第一已推送信息。
在一些實施例中,剔除模塊配置具體用于:將每個第一已推送信息與第一待推送信息庫中的各第一待推送信息做匹配運算,確定相似度大于第一預設(shè)閾值的第一待推送信息為第一待剔除信息;從第一待推送信息庫中剔除第一待剔除信息生成第二待推送信息庫。
在一些實施例中,剔除模塊進一步配置用于:將各第一已推送信息與第二待推送信息庫中的各第二待推送信息做匹配運算,確定相似度大于第二預設(shè)閾值且小于第一預設(shè)閾值的第二待推送信息為第二候選信息;響應于確定第二候選信息的數(shù)量大于第三預設(shè)閾值,剔除多余的第二候選信息以使第二待推送信息庫中的第二候選信息的數(shù)量不超過第三預設(shè)閾值。
第三方面,本申請?zhí)峁┝艘环N服務器,包括:一個或多個處理器;存儲裝置,用于存儲一個或多個程序,當一個或多個程序被一個或多個處理器執(zhí)行,使得一個或多個處理器實現(xiàn)上述任一的方法。
第四方面,本申請?zhí)峁┝艘环N計算機可讀存儲介質(zhì),其上存儲有計算機程序,該程序被處理器執(zhí)行時實現(xiàn)上述任一的方法。
本申請實施例提供的用于推送信息的方法和裝置,通過獲取用戶的第一已推送信息,可以從第一待推送信息庫中剔除與第一已推送信息相匹配的第一待推送信息生成第二待推送信息庫,而后將第二待推送信息庫中的第二待推送信息排序生成第三待推送隊列,并從該隊列中依次獲取至少一個第三待推送信息插入用戶的訂閱信息隊列中推送給該用戶,從而避免了重復地向用戶推送與第一已推送信息相匹配的信息。
附圖說明
通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本申請的其它特征、目的和優(yōu)點將會變得更明顯:
圖1示出了本申請可以應用于其中的示例性系統(tǒng)架構(gòu)圖;
圖2示出了根據(jù)本申請的用于推送信息的方法的一個實施例的流程圖;
圖3a-圖3b示出了根據(jù)本申請的用于推送信息的方法的一個應用場景的示意圖;
圖4示出了根據(jù)本申請的用于推送信息的方法的另一個實施例的流程圖;
圖5示出了根據(jù)本申請的用于推送信息的裝置的一個實施例的結(jié)構(gòu)示意圖;
圖6示出了適于用來實現(xiàn)本申請實施例的終端設(shè)備或服務器的計算機系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
下面結(jié)合附圖和實施例對本申請作進一步的詳細說明??梢岳斫獾氖牵颂幩枋龅木唧w實施例僅僅用于解釋相關(guān)發(fā)明,而非對該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關(guān)發(fā)明相關(guān)的部分。
需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結(jié)合實施例來詳細說明本申請。
圖1示出了可以應用本申請的用于推送信息的方法或用于推送信息的裝置的實施例的示例性系統(tǒng)架構(gòu)100。
如圖1所示,系統(tǒng)架構(gòu)100可以包括終端設(shè)備101、102、103,網(wǎng)絡104和服務器105。網(wǎng)絡104用以在終端設(shè)備101、102、103和服務器105之間提供通信鏈路的介質(zhì)。網(wǎng)絡104可以包括各種連接類型,例如有線、無線通信鏈路或者光纖電纜等等。
用戶可以使用終端設(shè)備101、102、103通過網(wǎng)絡104與服務器105交互,以接收或發(fā)送信息等。終端設(shè)備101、102、103上可以安裝有各種通訊客戶端應用,例如網(wǎng)頁瀏覽器應用、購物類應用、搜索類應用、即時通信工具、郵箱客戶端、社交平臺軟件等。
終端設(shè)備101、102、103可以是具有顯示屏并且支持信息查閱的各種電子設(shè)備,包括但不限于智能手機、平板電腦、電子書閱讀器、mp3播放器(movingpictureexpertsgroupaudiolayeriii,動態(tài)影像專家壓縮標準音頻層面3)、mp4(movingpictureexpertsgroupaudiolayeriv,動態(tài)影像專家壓縮標準音頻層面4)播放器、膝上型便攜計算機和臺式計算機等等。
服務器105可以是提供各種服務的服務器,例如對終端設(shè)備101、102、103上的輸入法應用、搜索引擎、文件管理類應用等提供支持的數(shù)據(jù)庫服務器或云服務器。服務器可以對接收到的數(shù)據(jù)進行存儲、分析等處理,并將處理結(jié)果反饋給終端設(shè)備。
需要說明的是,本申請實施例所提供的用于推送信息的方法一般由服務器105執(zhí)行,相應地,用于推送信息的裝置一般設(shè)置于服務器105中。
應該理解,圖1中的終端設(shè)備、網(wǎng)絡和服務器的數(shù)目僅僅是示意性的。根據(jù)實現(xiàn)需要,可以具有任意數(shù)目的終端設(shè)備、網(wǎng)絡和服務器。
繼續(xù)參考圖2,示出了根據(jù)本申請的用于推送信息的方法的一個實施例的流程200。該用于推送信息的方法,可以包括以下步驟:
步驟201,獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息。
在本實施例中,用戶所在的終端設(shè)備可以在預設(shè)歷史時間段內(nèi)通過有線連接方式或者無線連接方式從用于推送信息的方法運行于其上的電子設(shè)備(例如圖1所示的服務器)接收該電子設(shè)備推送的信息。上述電子設(shè)備可以根據(jù)用戶的id等身份標識獲取對應用戶在該預設(shè)歷史時間段內(nèi)接收到的信息,該接收到的信息為第一已推送信息。這里,第一已推送信息可以包括用戶接收到且點擊閱讀過的第一已推送信息和用戶接收到但并未點擊閱讀過的第一已推送信息。上述第一已推送信息可以包括但不限于廣告信息。需要指出的是,上述無線連接方式可以包括但不限于3g/4g連接、wifi連接、藍牙連接、wimax連接、zigbee連接、uwb(ultrawideband)連接、以及其他現(xiàn)在已知或?qū)黹_發(fā)的無線連接方式。
這里,預設(shè)歷史時間段可以由電子設(shè)備接收的設(shè)置指令而指定,例如,上述電子設(shè)備可以提供設(shè)置界面,以將預設(shè)歷史時間段設(shè)置為從“2017-4-16”到“2017-4-20”;或者上述預設(shè)歷史時間段也可以被缺省設(shè)置,例如直接默認為“最近五天”。
步驟202,從預設(shè)的第一待推送信息庫中剔除第一待剔除信息以生成第二待推送信息庫。
在本實施例中,上述電子設(shè)備可以預先設(shè)置第一待推送信息庫,該第一待推送信息庫可以包括多個第一待推送信息。各第一待推送信息可以與上述第一已推送信息的信息類型相同,例如,第一待推送信息和上述第一已推送信息可以均為廣告信息。上述電子設(shè)備可以利用各種匹配手段將上述預設(shè)的第一待推送信息庫中的各第一待推送信息與上述第一已推送信息做匹配運算,從中確定與該第一已推送信息相匹配第一待推送信息,并確認該所確定的第一待推送信息為第一待剔除信息。上述電子設(shè)備可以從上述第一待推送信息庫中剔除上述第一待剔除信息生成第二待推送信息庫。
在本實施例的一些可選的實現(xiàn)方式中,上述電子設(shè)備可以預先獲取上述用戶的行為信息。這里,電子設(shè)備可以基于用戶的搜索信息、點擊信息、訂閱信息和收藏信息等獲取用戶的行為信息。而后,電子設(shè)備可以從該用戶的行為信息中提取關(guān)鍵詞,并對其進行擴展生成關(guān)鍵詞集合??梢姡撽P(guān)鍵詞集合可以包括上述提取的關(guān)鍵詞和該關(guān)鍵詞的衍生詞。最后,電子設(shè)備可以根據(jù)關(guān)鍵詞集合從預設(shè)的多個第一信息中獲取多個第一待推送信息,生成第一待推送信息庫。例如,若某個第一信息的內(nèi)容包含上述關(guān)鍵詞集合中的任一關(guān)鍵詞,該電子設(shè)備可以將該第一信息作為第一待推送信息。上述提取的關(guān)鍵詞的衍生詞可以包括以下至少一項:上述提取的關(guān)鍵詞的同義詞,例如,關(guān)鍵詞“孩子”可以具有同義詞“兒童”;上述提取的關(guān)鍵詞的近義詞,例如,關(guān)鍵詞“元宵”可以具有近義詞“湯圓”;上述提取的關(guān)鍵詞的擴充詞,關(guān)鍵詞的擴充詞與該關(guān)鍵詞可以經(jīng)常出現(xiàn)在同一信息中,且兩者的關(guān)聯(lián)性較強,例如,關(guān)鍵詞“牙刷”可以具有“牙膏”或“沖牙器”之類的擴充詞。
步驟203,將第二待推送信息庫中的各第二待推送信息排序以生成第三待推送信息隊列。
在本實施例中,對于步驟202生成的第二待推送信息庫,其中包括第一待推送信息庫中剔除第一待剔除信息后剩余的至少一個第一待推送信息。這里,可以將第一待推送信息庫中剩余的各第一待推送信息作為第二待推送信息,并將各第二待推送信息組成的信息庫作為第二待推送信息庫。上述電子設(shè)備可以按照預設(shè)的排序規(guī)則將上述第二待推送信息庫中的各第二待推送信息排序,生成第三待推送消息隊列。
例如,上述電子設(shè)備可以按照各第二待推送信息的生成時間的先后順序,將各第二待推送信息進行排序;或者還可以按照各第二待推送信息的熱門程度(這里,可以根據(jù)第二待推送信息的點擊量確定該第二待推送信息的熱門程度),將各第二待推送信息進行排序。
步驟204,從第三待推送信息隊列中依次獲取至少一個第三待推送信息,并將所獲取的至少一個第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間。
在本實施例中,對于步驟203生成的第三待推送信息隊列,其中可以包括排序后的各第二待推送信息。這里,可以將排序后的各第二待推送信息作為第三待推送信息,可見上述第三待推送信息隊列可以包括至少一個第三待推送信息。上述電子設(shè)備可以預先獲取上述用戶訂閱的訂閱信息隊列,之后從上述第三待推送信息隊列依次獲取至少一個第三待推送信息,而后將獲取的各第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間,形成一個新的待推送信息隊列,最后將形成的新的待推送信息隊列推送給用戶,從而使得用戶在瀏覽訂閱信息時可以同時接收被插入的第三待推送信息。
通常,用戶可以通過訂閱信息系統(tǒng)訂閱信息,在用戶查閱訂閱信息時,該訂閱系統(tǒng)可以生成反饋的訂閱信息隊列,而后將該訂閱信息隊列反饋給上述用戶。上述電子設(shè)備在訂閱系統(tǒng)生成訂閱信息隊列時,可以將上述獲取的至少一個第三待推送信息插入該信息隊列中相鄰的兩個訂閱信息之間,因此,上述用戶在接收上述查閱訂閱信息的同時,還可以查閱被插入的第三待推送信息。
繼續(xù)參見圖3a-圖3b,圖3a-圖3b示出了根據(jù)本實施例的用于推送信息的方法的應用場景的一個示意圖。在用戶第一次發(fā)送查閱訂閱的時事新聞信息時,該用戶可以同時接收到了多個時事新聞和第一廣告信息301,如圖3a所示;在用戶點擊或觸控如圖3a所示的刷新標識302時,用戶可以第二次發(fā)送查閱訂閱的時事新聞的請求。此時,上述服務器可以后臺獲取上述第一廣告信息301為第一已推送信息;之后,上述服務器可以在預先設(shè)置的包含多個第一待推送廣告信息的第一待推送信息庫中剔除與上述第一廣告信息相匹配的第一待推送廣告信息生成第二待推送信息庫;而后,上述服務器可以將第二待推送信息庫中的各第二待推送廣告信息按照預設(shè)的規(guī)則(例如投放廣告的價格)排序生成第三待推送信息隊列;最后,上述服務器可以從第三待推送信息隊列中依次獲取至少一個第三待推送廣告信息,并將所獲取的第三待推送廣告信息插入上述時事新聞隊列中相鄰的時事新聞之間。當用戶第二次查閱訂閱的時事新聞時,就會接收到被插入的第三待推送廣告信息303,并顯示在終端設(shè)備上,如圖3b所示。
本申請的上述實施例提供的用于推送信息的方法,通過獲取用戶的第一已推送信息,可以從第一待推送信息庫中剔除與第一已推送信息相匹配的第一待推送信息生成第二待推送信息庫,而后將第二待推送信息庫中的第二待推送信息排序生成第三待推送隊列,并從該隊列中依次獲取至少一個第三待推送信息插入用戶的訂閱信息隊列中推送給該用戶,從而避免了重復地向用戶推送與第一已推送信息相匹配的的信息。
接下來請參考圖4,其示出了根據(jù)本申請的用于推送信息的方法的另一個實施例的流程圖400。如圖所示,本實施例中的用于推送信息的方法,可以包括如下步驟:
步驟401,將用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息緩存到緩存數(shù)據(jù)庫。
在本實施例中,用于推送信息的方法運行于其上的電子設(shè)備(例如圖1所示的服務器)可以根據(jù)用戶的id等身份標識獲取該用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息,并將獲取的第一已推送信息緩存到緩存數(shù)據(jù)庫。預設(shè)歷史時間段可以由電子設(shè)備接收的設(shè)置指令而指定,例如,上述預設(shè)歷史時間段可以為最近五天??梢岳斫?,上述庫數(shù)據(jù)庫可以緩存不同用戶的接收到的第一已推送信息。
步驟402,從緩存數(shù)據(jù)庫獲取各第一已推送信息。
在本實施例中,上述電子設(shè)備可以從上述緩存數(shù)據(jù)庫獲取該用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息??梢岳斫?,若該用戶在預設(shè)歷史時間段內(nèi)接收到多個第一已推送信息,則上述電子設(shè)備可以獲取每個第一已推送信息。
步驟403,將每個第一已推送信息與第一待推送信息庫中的各第一待推送信息做匹配運算,確定相似度大于第一預設(shè)閾值的第一待推送信息為第一待剔除信息。
在本實施例中,上述電子設(shè)備可以預先設(shè)置第一待推送信息庫,該第一待推送信息庫中可以包括多個第一待推送信息?;诓襟E402獲取的第一已推送信息,上述電子設(shè)備可以將每個第一已推送信息與第一待推送信息庫中的各第一待推送信息做匹配運算,并獲取各第一待推送信息與該第一已推送信息的相似度,進而確定出與第一已推送信息的相似度大于第一預設(shè)閾值的第一待推送信息。上述電子設(shè)備可以將所確定出的第一待推送信息作為第一待剔除信息。例如,這里的第一預設(shè)閾值可以為99%,則上述電子設(shè)備可以確定與第一已推送信息相似度大于99%的第一待推送信息為第一待剔除信息。
在本實施例的一些可選的實現(xiàn)方式中,上述電子設(shè)備可以采用各種匹配運算方法,計算第一已推送信息與各第一待推送信息的相似度。例如,上述電子設(shè)備首先可以從第一已推送信息中提取多個關(guān)鍵詞,之后獲取各關(guān)鍵詞以及各關(guān)鍵詞的衍生詞等生成關(guān)鍵詞集合,而后上述電子設(shè)備可以將上述關(guān)鍵詞集合與各第一待推送信息的內(nèi)容分別進行逐一匹配,并根據(jù)每條第一待推送信息的內(nèi)容所包括的關(guān)鍵詞的數(shù)目來確定該第一待選推送信息與第一已推送信息的匹配關(guān)系。例如,如果某個第一待推送信息的內(nèi)容中包括了上述關(guān)鍵詞集合中的所有關(guān)鍵詞,則可以確定該第一待推送信息與上述第一已推送信息的相似度為100%;而如果某個第一待推送信息的內(nèi)容中包括了上述關(guān)鍵詞集合中的部分關(guān)鍵詞,則可以根據(jù)該第一待推送信息的內(nèi)容中包括的關(guān)鍵詞的數(shù)目確定該第一待推送信息與上述第一已推送信息的相似度。
步驟404,從第一待推送信息庫中剔除第一待剔除信息生成第二待推送信息庫。
在本實施例中,基于步驟403確定的第一待剔除信息,上述電子設(shè)備可以從第一待推送信息庫中剔除該第一待剔除信息,并將第一待推送信息庫中剩余的第一待推送信息組成第二待推送信息庫。從而可以避免第二待推送信息庫存在與第一已推送信息相似度大于第一預設(shè)閾值的第一待推送信息。
步驟405,將各第一已推送信息與第二待推送信息庫中的各第二待推送信息做匹配運算,確定相似度大于第二預設(shè)閾值且小于第一預設(shè)閾值的第二待推送信息為第二候選信息。
在本實施例中,基于步驟404獲取的第二待推送信息庫,上述電子設(shè)備可以將每個第一已推送信息與該第二待推送信息庫中的各第二待推送信息做匹配運算,獲取各第二待推送信息與該第一已推送信息的相似度,從而可以確定出與第一已推送信息的相似度大于第二預設(shè)閾值且小于第一預設(shè)閾值的第二待推送信息。上述電子設(shè)備可以將所確定出的第二待推送信息作為第二候選信息。
可以理解,第二待推送信息庫中的各第二待推送信息為第一待推送信息庫中剔除第一待剔除信息后剩余的第一待推送信息,因此,在將每個第一已推送信息與第一待推送信息庫中的各第一待推送信息做匹配運算時,可以直接確定相似度大于第二預設(shè)預設(shè)閾值且小于第一預設(shè)閾值的第一待推送信息,該所確定的第一待推送信息即為上述第二候選信息。可見,上述電子設(shè)備可以通過兩次匹配運算分別確定第一待剔除信息和第二候選信息;或者,上述電子設(shè)備還可以通過一次匹配運算,確定第一待剔除信息和第二候選信息。
步驟406,響應于確定第二候選信息的數(shù)量大于第三預設(shè)閾值,剔除多余的第二候選信息以使第二待推送信息庫中的第二候選信息的數(shù)量不超過第三預設(shè)閾值。
在本實施例中,基于步驟405獲取的第二候選信息,上述電子設(shè)備首先可以確定第二候選信息的數(shù)量,而后判斷第二候選信息的數(shù)量是否大于第三預設(shè)閾值。當上述電子設(shè)備確定第二候選信息的數(shù)量大于第三預設(shè)閾值時,可以從各第二候選信息中剔除多余的第二候選信息,使得第二候選信息的數(shù)量不超過第三預設(shè)閾值??梢岳斫猓斏鲜鲭娮釉O(shè)備確定第二候選信息的數(shù)量小于或等于第三預設(shè)閾值時,在第二待推送信息庫中可以保持各第二候選信息的數(shù)量不變。
在本實施例的一些可選的實現(xiàn)方式中,當上述電子設(shè)備確定第二候選信息的數(shù)量大于第三預設(shè)閾值時,可以將各第二候選信息按照其與第一已推送信息的相似度從小到大的順序進行排列,而后剔除其中與第一待推送信息相似度較小的第二候選信息,以使第二候選信息的數(shù)量不超過第三預設(shè)閾值??梢岳斫猓鲜鲭娮釉O(shè)備還可以根據(jù)其它的排序規(guī)則對各第二候選信息進行排序,來剔除多余的第二候選信息?;蛘?,上述電子設(shè)備還可以各第二候選信息中隨機選取被剔除的第二候選信息。本領(lǐng)域的技術(shù)人員可以根據(jù)實際的需要,選取需要被剔除的第二候選信息,這里沒有唯一的限定。
步驟407,將第二待推送信息庫中的各第二待推送信息排序以生成第三待推送信息隊列。
在本實施例中,上述電子設(shè)備可以獲取第二待推送信息庫中剩余的各第二待推送信息,并將各第二待推送信息按照預設(shè)的排序規(guī)則進行排序,生成第三待推送消息隊列。
步驟408,從第三待推送信息隊列中依次獲取至少一個第三待推送信息,并將所獲取的至少一個第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間。
在本實施例中,對于步驟407生成的第三待推送信息隊列,這里可以將排序后的各第二待推送信息作為第三待推送信息。上述電子設(shè)備可以預先獲取上述用戶訂閱的訂閱信息隊列,之后從上述第三待推送信息隊列獲取至少一個第三待推送信息,而后將獲取的各第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間,形成一個新的待推送信息隊列,最后將形成的新的待推送信息隊列推送給用戶,從而使得用戶在瀏覽訂閱信息時可以同時接收被插入的第三待推送信息。
從圖4中可以看出,與圖2對應的實施例相比,本實施例中的用于推送信息的方法的流程400可以剔除第一待推送信息庫中所有與第一已推送信息相似度大于第一預設(shè)閾值的第一待推送信息,并可以剔除第二待推送信息庫中部分與第一已推送信息相似度大于第二預設(shè)閾值且小于第一預設(shè)閾值的第二待推送信息,從而可以避免向用戶推送數(shù)量過多的與第一已推送信息相似的信息。
進一步參考圖5,作為對上述各圖所示方法的實現(xiàn),本申請?zhí)峁┝艘环N用于推送信息的裝置的一個實施例,該裝置實施例與圖2所示的方法實施例相對應,該裝置具體可以應用于各種電子設(shè)備中。
如圖5所示,本實施例的用于推送信息的裝置500包括:獲取模塊501、剔除模塊502、排序模塊503和插入模塊504。其中,獲取模塊501配置用于配置用于獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息;剔除模塊502配置用于從預設(shè)的第一待推送信息庫中剔除第一待剔除信息以生成第二待推送信息庫,其中,第一待剔除信息為第一待推送信息庫中與第一已推送信息相匹配的第一待推送信息;排序模塊503配置用于將第二待推送信息庫中的各第二待推送信息排序以生成第三待推送信息隊列;而插入模塊504配置用于從第三待推送信息隊列中依次獲取至少一個第三待推送信息,并將所獲取的所述至少一個第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間。
在本實施例的一些可選的實現(xiàn)方式中,裝置500還可以還包括:生成模塊(未示出)配置用于獲取用戶的行為信息,其中,行為信息基于以下一項或多項得到:搜索信息、點擊信息、訂閱信息和收藏信息;提取行為信息的關(guān)鍵詞,并對關(guān)鍵詞進行擴展以獲取關(guān)鍵詞集合;根據(jù)關(guān)鍵詞集合,從預設(shè)的多個第一信息中獲取多個第一待推送信息以生成第一待推送信息庫。
在本實施例的一些可選的實現(xiàn)方式中,上述獲取模塊501配置具體用于將用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息緩存到緩存數(shù)據(jù)庫;以及從緩存數(shù)據(jù)庫獲取各第一已推送信息。
在本實施例的一些可選的實現(xiàn)方式中,上述剔除模塊502配置具體用于將每個第一已推送信息與第一待推送信息庫中的各第一待推送信息做匹配運算,確定相似度大于第一預設(shè)閾值的第一待推送信息為第一待剔除信息;以及從第一待推送信息庫中剔除第一待剔除信息生成第二待推送信息庫。
在本實施例的一些可選的實現(xiàn)方式中,剔除模塊502進一步配置用于將各第一已推送信息與第二待推送信息庫中的各第二待推送信息做匹配運算,確定相似度大于第二預設(shè)閾值且小于第一預設(shè)閾值的第二待推送信息為第二候選信息;以及響應于確定第二候選信息的數(shù)量大于第三預設(shè)閾值,剔除多余的第二候選信息以使第二待推送信息庫中的第二候選信息的數(shù)量不超過第三預設(shè)閾值。
下面參考圖6,其示出了適于用來實現(xiàn)本申請實施例的終端設(shè)備/服務器的計算機系統(tǒng)600的結(jié)構(gòu)示意圖。圖6示出的終端設(shè)備/服務器僅僅是一個示例,不應對本申請實施例的功能和使用范圍帶來任何限制。
如圖6所示,計算機系統(tǒng)600包括中央處理單元(cpu)601,其可以根據(jù)存儲在只讀存儲器(rom)602中的程序或者從存儲部分608加載到隨機訪問存儲器(ram)603中的程序而執(zhí)行各種適當?shù)膭幼骱吞幚?。在ram603中,還存儲有系統(tǒng)600操作所需的各種程序和數(shù)據(jù)。cpu601、rom602以及ram603通過總線604彼此相連。輸入/輸出(i/o)接口605也連接至總線604。
以下部件連接至i/o接口605:包括鍵盤、鼠標等的輸入部分606;包括諸如陰極射線管(crt)、液晶顯示器(lcd)等以及揚聲器等的輸出部分607;包括硬盤等的存儲部分608;以及包括諸如lan卡、調(diào)制解調(diào)器等的網(wǎng)絡接口卡的通信部分609。通信部分609經(jīng)由諸如因特網(wǎng)的網(wǎng)絡執(zhí)行通信處理。驅(qū)動器610也根據(jù)需要連接至i/o接口605??刹鹦督橘|(zhì)611,諸如磁盤、光盤、磁光盤、半導體存儲器等等,根據(jù)需要安裝在驅(qū)動器610上,以便于從其上讀出的計算機程序根據(jù)需要被安裝入存儲部分608。
特別地,根據(jù)本公開的實施例,上文參考流程圖描述的過程可以被實現(xiàn)為計算機軟件程序。例如,本公開的實施例包括一種計算機程序產(chǎn)品,其包括承載在計算機可讀介質(zhì)上的計算機程序,該計算機程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實施例中,該計算機程序可以通過通信部分609從網(wǎng)絡上被下載和安裝,和/或從可拆卸介質(zhì)611被安裝。在該計算機程序被中央處理單元(cpu)601執(zhí)行時,執(zhí)行本申請的方法中限定的上述功能。需要說明的是,本申請所述的計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)或者是上述兩者的任意組合。計算機可讀存儲介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質(zhì)的更具體的例子可以包括但不限于:具有一個或多個導線的電連接、便攜式計算機磁盤、硬盤、隨機訪問存儲器(ram)、只讀存儲器(rom)、可擦式可編程只讀存儲器(eprom或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(cd-rom)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本申請中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。而在本申請中,計算機可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括但不限于電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)還可以是計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。計算機可讀介質(zhì)上包含的程序代碼可以用任何適當?shù)慕橘|(zhì)傳輸,包括但不限于:無線、電線、光纜、rf等等,或者上述的任意合適的組合。
附圖中的流程圖和框圖,圖示了按照本申請各種實施例的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段、或代碼的一部分,該模塊、程序段、或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。
描述于本申請實施例中所涉及到的模塊可以通過軟件的方式實現(xiàn),也可以通過硬件的方式來實現(xiàn)。所描述的模塊也可以設(shè)置在處理器中,例如,可以描述為:一種處理器包括獲取模塊、剔除模塊、排序模塊和插入模塊。其中,這些模塊的名稱在某種情況下并不構(gòu)成對該單元本身的限定,例如,獲取模塊還可以被描述為“獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息的模塊”。
作為另一方面,本申請還提供了一種計算機可讀介質(zhì),該計算機可讀介質(zhì)可以是上述實施例中描述的裝置中所包含的;也可以是單獨存在,而未裝配入該裝置中。上述計算機可讀介質(zhì)承載有一個或者多個程序,當上述一個或者多個程序被該裝置執(zhí)行時,使得該裝置:獲取用戶在預設(shè)歷史時間段內(nèi)接收到的第一已推送信息;從預設(shè)的第一待推送信息庫中剔除第一待剔除信息以生成第二待推送信息庫,其中,第一待剔除信息為第一待推送信息庫中與第一已推送信息相匹配的第一待推送信息;將第二待推送信息庫中的各第二待推送信息排序以生成第三待推送信息隊列;從第三待推送信息隊列中依次獲取至少一個第三待推送信息,并將所獲取的至少一個第三待推送信息插入用戶訂閱的訂閱信息隊列中相鄰的兩個訂閱信息之間。
以上描述僅為本申請的較佳實施例以及對所運用技術(shù)原理的說明。本領(lǐng)域技術(shù)人員應當理解,本申請中所涉及的發(fā)明范圍,并不限于上述技術(shù)特征的特定組合而成的技術(shù)方案,同時也應涵蓋在不脫離上述發(fā)明構(gòu)思的情況下,由上述技術(shù)特征或其等同特征進行任意組合而形成的其它技術(shù)方案。例如上述特征與本申請中公開的(但不限于)具有類似功能的技術(shù)特征進行互相替換而形成的技術(shù)方案。