專利名稱:用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及搜索領(lǐng)域,具體涉及一種用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng)。
背景技術(shù):
目前,隨著計(jì)算機(jī)技術(shù)的發(fā)展和互聯(lián)網(wǎng)用戶規(guī)模的不斷擴(kuò)大,越來(lái)越多的互聯(lián)網(wǎng)用戶使用個(gè)人計(jì)算機(jī)通過(guò)互聯(lián)網(wǎng)獲得各種各樣所需的信息。同時(shí),為互聯(lián)網(wǎng)用戶提供信息服務(wù)的網(wǎng)站也越來(lái)越多,互聯(lián)網(wǎng)網(wǎng)頁(yè)的數(shù)量每天都在以驚人的速度增長(zhǎng),互聯(lián)網(wǎng)信息呈現(xiàn)出爆發(fā)式的增長(zhǎng)。因此,對(duì)于用戶來(lái)說(shuō),經(jīng)常需要通過(guò)一定的手段(比如,通過(guò)搜索引擎服務(wù)),才能在浩如煙海的互聯(lián)網(wǎng)信息中迅速定位最適合自己需求的網(wǎng)站或者需要的信息。搜索引擎的服務(wù)器通常需要根據(jù)用戶輸入的搜索詞去數(shù)據(jù)來(lái)源服務(wù)器搜索對(duì)應(yīng)的結(jié)果,并將結(jié)果提供給用戶。這里提到的數(shù)據(jù)來(lái)源服務(wù)器是指第三方服務(wù)器,用于存儲(chǔ)原始的網(wǎng)頁(yè)資源。采用上述的搜索引擎服務(wù),雖然可以滿足用戶搜索數(shù)據(jù)的需求,但是,由于每次都需要去數(shù)據(jù)來(lái)源服務(wù)器查詢,因此,延長(zhǎng)了搜索引擎搜索時(shí)耗費(fèi)的時(shí)間,導(dǎo)致用戶等待時(shí)間較長(zhǎng)。
發(fā)明內(nèi)容
鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決上述問(wèn)題的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng)。依據(jù)本發(fā)明的一個(gè)方面,提供了一種用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法,包括以下步驟預(yù)先提取關(guān)鍵詞列表,通過(guò)訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器獲取關(guān)鍵詞列表中每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中;獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求,將搜索請(qǐng)求分發(fā)到緩存數(shù)據(jù)庫(kù)中,在緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果;將關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果發(fā)送給客戶端;其中,所述獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求的步驟之后,進(jìn)一步包括將所述搜索請(qǐng)求分發(fā)到搜索服務(wù)器,獲取所述搜索服務(wù)器從外部的數(shù)據(jù)來(lái)源服務(wù)器查找到的所述搜索詞對(duì)應(yīng)的查詢結(jié)果;當(dāng)在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找到的與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),該方法進(jìn)一步包括將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給所述客戶端,其中,所述搜索服務(wù)器的查詢結(jié)果用于作為所述緩存數(shù)據(jù)庫(kù)的查詢結(jié)果的補(bǔ)充。依據(jù)本發(fā)明的另一方面,提供了一種用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng),包括通信設(shè)備、緩存數(shù)據(jù)庫(kù)以及抓取服務(wù)器,其中,抓取服務(wù)器,適于預(yù)先提取關(guān)鍵詞列表,通過(guò)訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器獲取關(guān)鍵詞列表中每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中;通信設(shè)備,適于接收獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求,將搜索請(qǐng)求分發(fā)到緩存數(shù)據(jù)庫(kù)中,在緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果在緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果,還適于將查詢結(jié)果發(fā)送給客戶端;搜索服務(wù)器,適于從外部的數(shù)據(jù)來(lái)源服務(wù)器查找搜索詞對(duì)應(yīng)的查詢結(jié)果;則所述通信設(shè)備進(jìn)一步適于將所述搜索請(qǐng)求分發(fā)到所述搜索服務(wù)器,獲取所述搜索服務(wù)器查找到的所述搜索詞對(duì)應(yīng)的查詢結(jié)果;以及當(dāng)在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找到的與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給所述客戶端,其中,所述搜索服務(wù)器的查詢結(jié)果用于作為所述緩存數(shù)據(jù)庫(kù)的查詢結(jié)果的補(bǔ)充。根據(jù)本發(fā)明的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),可以預(yù)先設(shè)置緩存數(shù)據(jù)庫(kù)以及匹配規(guī)則,并預(yù)先在緩存數(shù)據(jù)庫(kù)中存儲(chǔ)所有關(guān)鍵詞以及每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,具體 搜索時(shí)只需去緩存數(shù)據(jù)庫(kù)中即可查找到對(duì)應(yīng)的結(jié)果,無(wú)需訪問(wèn)數(shù)據(jù)來(lái)源服務(wù)器,由此解決了現(xiàn)有技術(shù)中搜索耗時(shí)過(guò)多,導(dǎo)致用戶等待時(shí)間過(guò)長(zhǎng)的問(wèn)題,取得了直接查詢緩存數(shù)據(jù)庫(kù)即可迅速查找到匹配的數(shù)據(jù)的有益效果。上述說(shuō)明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說(shuō)明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式
。
通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中圖I示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法的流程圖;圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)的結(jié)構(gòu)圖;以及圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的查詢結(jié)果的示意圖。
具體實(shí)施例方式下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。圖I示出了本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法的流程圖,如圖I所示,該方法包括以下步驟步驟SllO :預(yù)先提取關(guān)鍵詞列表,通過(guò)訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器獲取關(guān)鍵詞列表中每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中。步驟S120 :獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求,將該搜索請(qǐng)求分發(fā)到緩存數(shù)據(jù)庫(kù)中,在緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則(例如自然語(yǔ)言處理分析規(guī)則,和/或正則表達(dá)式規(guī)則)查找與搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果。可選地,為了便于查找,緩存數(shù)據(jù)庫(kù)中存儲(chǔ)的關(guān)鍵詞以及每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果以鍵值對(duì)的方式存儲(chǔ),且關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果可以是包含該關(guān)鍵詞的網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照,該數(shù)據(jù)快照用于存儲(chǔ)網(wǎng)頁(yè)的裸數(shù)據(jù)或html數(shù)據(jù)。另外,緩存數(shù)據(jù)庫(kù)中的所有關(guān)鍵詞還可以進(jìn)一步按照預(yù)設(shè)的分類進(jìn)行存儲(chǔ),則客戶端發(fā)送的搜索請(qǐng)求中進(jìn)一步包括搜索詞所屬的分類。相應(yīng)地,在查找與搜索詞相匹配的關(guān)鍵詞時(shí),只需在分類類別與搜索詞所屬類別相同的關(guān)鍵詞中查找,從而進(jìn)一步簡(jiǎn)化了查找時(shí)的工作量,節(jié)約了查找時(shí)間。而且,當(dāng)關(guān)鍵詞的查詢結(jié)果與地域相關(guān)時(shí),緩存數(shù)據(jù)庫(kù)中存儲(chǔ)的關(guān)鍵詞的查詢結(jié)果還可以進(jìn)一步包括與各個(gè)地域相對(duì)應(yīng)的查詢結(jié)果,這樣,在預(yù)先設(shè)置的緩存數(shù)據(jù)庫(kù)中查找關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果時(shí)進(jìn)一步包括根據(jù)客戶端發(fā)送的搜索請(qǐng)求中攜帶的IP地址來(lái)確定該客戶端所處的地域,并在緩存數(shù)據(jù)庫(kù)中查找與該地域相對(duì)應(yīng)的查詢結(jié)果,從而可以為客戶端發(fā)送與其所處的地域相符合的查詢結(jié)果。步驟S130 :將步驟S120中查找到的關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果發(fā)送給該客戶端。通過(guò)本發(fā)明的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法,可以預(yù)先設(shè)置緩存數(shù)據(jù)庫(kù)以及匹配規(guī)貝U,并在緩存數(shù)據(jù)庫(kù)中存儲(chǔ)所有關(guān)鍵詞以及每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,因此,根據(jù)預(yù)設(shè)的緩存數(shù)據(jù)庫(kù)和匹配規(guī)則可以迅速查找到匹配的數(shù)據(jù)。下面以一個(gè)優(yōu)選實(shí)施例詳細(xì)描述一下本發(fā)明提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法??蛇x地,為了提高數(shù)據(jù)搜索的精準(zhǔn)性,縮短搜索時(shí)間,在本優(yōu)選實(shí)施例中,預(yù)先將用戶可能會(huì)搜索的關(guān)鍵詞按照一定的分類規(guī)則進(jìn)行分類,相應(yīng)地,在提供給用戶的搜索界面中,可以針對(duì)每一類別,分別為用戶提供一個(gè)搜索框。例如,可以預(yù)先將搜索詞分為以下類別生活服務(wù)、投資理財(cái)以及娛樂(lè)資訊等,這樣,在搜索界面中可以進(jìn)一步包括生活服務(wù)對(duì)應(yīng)的搜索框、投資理財(cái)對(duì)應(yīng)的搜索框,以及娛樂(lè)資訊對(duì)應(yīng)的搜索框。這樣,當(dāng)用戶需要輸入搜索詞進(jìn)行搜索時(shí),會(huì)先判斷該搜索詞屬于哪一類別,然后,在該類別對(duì)應(yīng)的搜索框中輸入搜索詞。例如,當(dāng)用戶要查詢股票信息時(shí),會(huì)選擇投資理財(cái)對(duì)應(yīng)的搜索框進(jìn)行搜索,這樣,由于在搜索時(shí)限定了搜索詞所屬的分類,搜索時(shí)僅對(duì)同一分類中的關(guān)鍵詞進(jìn)行查找,因此,既提高了查找速度,又使得查找結(jié)果更加準(zhǔn)確,不易出現(xiàn)偏差。另外,還可以按照其他的分類方式進(jìn)行分類,例如,按照視頻、文本、圖片等方式進(jìn)行分類。而且,還可以進(jìn)一步對(duì)一個(gè)大的分類中的數(shù)據(jù)進(jìn)行細(xì)小的分類,例如,“生活服務(wù)”分類又可以進(jìn)一步細(xì)分為“天氣預(yù) 報(bào)”、“車票預(yù)定”等,甚至“車票預(yù)定”又可以進(jìn)一步細(xì)分為“飛機(jī)票預(yù)定”、“火車票預(yù)定”等,從而進(jìn)一步方便查找。下面以生活服務(wù)這一分類為例詳細(xì)描述一下本優(yōu)選實(shí)施例中的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法。該方法主要包括以下步驟步驟一、預(yù)先提取“生活服務(wù)”這一分類中的關(guān)鍵詞,組成關(guān)鍵詞列表,針對(duì)該關(guān)鍵詞列表中的每一關(guān)鍵詞,將包含該關(guān)鍵詞的網(wǎng)頁(yè)所對(duì)應(yīng)的URL與該關(guān)鍵詞一起關(guān)聯(lián)存儲(chǔ)在該關(guān)鍵詞列表里。具體地,在提取“生活服務(wù)”這一分類中的關(guān)鍵詞時(shí),可以根據(jù)用戶的搜索頻率來(lái)確定要提取的關(guān)鍵詞,例如,將預(yù)定時(shí)段內(nèi)(例如,上一星期之內(nèi))用戶搜索的頻率較高的搜索詞篩選出來(lái)作為關(guān)鍵詞。具體實(shí)現(xiàn)時(shí),可以設(shè)定一個(gè)搜索閾值,將預(yù)定時(shí)段內(nèi)的搜索次數(shù)大于該搜索閾值的搜索詞篩選出來(lái)作為關(guān)鍵詞。然后,針對(duì)每一關(guān)鍵詞,獲取包含該關(guān)鍵詞的網(wǎng)頁(yè)所對(duì)應(yīng)的URL信息,并將該URL信息與該關(guān)鍵詞關(guān)聯(lián)存儲(chǔ)。其中,對(duì)于每一關(guān)鍵詞,包含該關(guān)鍵詞的網(wǎng)頁(yè)的數(shù)量可能是一個(gè),也可能是多個(gè),當(dāng)網(wǎng)頁(yè)數(shù)量為多個(gè)時(shí),還可以進(jìn)一步判定多個(gè)網(wǎng)頁(yè)中的內(nèi)容是否重復(fù),當(dāng)多個(gè)網(wǎng)頁(yè)中的內(nèi)容重復(fù)時(shí),只要挑選其中的一個(gè)網(wǎng)頁(yè)的URL進(jìn)行存儲(chǔ)即可,這樣,既可以避免因存儲(chǔ)的數(shù)據(jù)量過(guò)大而占用存儲(chǔ)空間過(guò)多的問(wèn)題,也可以在用戶搜索時(shí)縮短查詢時(shí)間。步驟二、根據(jù)步驟一中生成的關(guān)鍵詞列表,訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器,獲取該數(shù)據(jù)來(lái)源服務(wù)器中存儲(chǔ)的與URL對(duì)應(yīng)的網(wǎng)頁(yè)數(shù)據(jù),并根據(jù)獲取的網(wǎng)頁(yè)數(shù)據(jù)生成該網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照,將該數(shù)據(jù)快照作為與URL對(duì)應(yīng)的關(guān)鍵詞的查詢結(jié)果,每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中。具體地,網(wǎng)絡(luò)爬蟲根據(jù)關(guān)鍵詞列表中存儲(chǔ)的與關(guān)鍵詞對(duì)應(yīng)的URL,到數(shù)據(jù)來(lái)源服務(wù)器中抓取與URL對(duì)應(yīng)的網(wǎng)頁(yè)數(shù)據(jù),抓取后會(huì)對(duì)網(wǎng)頁(yè)數(shù)據(jù)進(jìn)行分析并拍照,形成該網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照。該數(shù)據(jù)快照中包含該URL對(duì)應(yīng)的關(guān)鍵詞,因此,將該數(shù)據(jù)快照作為該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,與該關(guān)鍵詞一起關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中。其中,數(shù)據(jù)快照具體用來(lái)存儲(chǔ) 網(wǎng)頁(yè)的裸數(shù)據(jù)或html數(shù)據(jù),采用數(shù)據(jù)快照進(jìn)行存儲(chǔ)的方式具有訪問(wèn)速度快、便于顯示的優(yōu)點(diǎn)。具體存儲(chǔ)時(shí),為了方便查找,可以通過(guò)鍵值對(duì)(key-value)的方式存儲(chǔ),S卩,將關(guān)鍵詞作為key,將該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果(即數(shù)據(jù)快照)作為value。或者,也可以對(duì)關(guān)鍵詞及該關(guān)鍵詞所屬的分類進(jìn)行加密運(yùn)算,將得到的加密結(jié)果作為key,將該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果作為value。例如,假設(shè)關(guān)鍵詞為“楓葉”,其所屬的分類為圖片,加密運(yùn)算為md5運(yùn)算,貝U只需對(duì)“楓葉”和“圖片”進(jìn)行md5運(yùn)算,將得到的運(yùn)算結(jié)果作為key即可。鍵值對(duì)其實(shí)是指一種數(shù)據(jù)存儲(chǔ)方式,該數(shù)據(jù)存儲(chǔ)方式能夠通過(guò)key-value的模式實(shí)現(xiàn)直接映射,具體實(shí)現(xiàn)時(shí),按照redis結(jié)構(gòu)將鍵值對(duì)存儲(chǔ)在內(nèi)存中即可。通過(guò)鍵值對(duì)的方式進(jìn)行存儲(chǔ)的存儲(chǔ)速度快,且讀取效率高。步驟三、獲取用戶通過(guò)客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求,將搜索請(qǐng)求分發(fā)到上述的緩存數(shù)據(jù)庫(kù)中,并在上述的緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與輸入的搜索詞相匹配的關(guān)鍵詞,以及該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果。具體地,在接收到包含搜索詞的搜索請(qǐng)求后,需要在緩存數(shù)據(jù)庫(kù)中查找與該搜索詞相匹配的關(guān)鍵詞。本實(shí)施例中在判斷搜索詞與關(guān)鍵詞是否匹配時(shí),是根據(jù)預(yù)設(shè)的匹配規(guī)則進(jìn)行判斷的。其中,該預(yù)設(shè)的匹配規(guī)則可以是自然語(yǔ)言處理分析規(guī)則(簡(jiǎn)稱NLP),或者,也可以是正則表達(dá)式規(guī)則,或者,也可以是二者的結(jié)合。其中,自然語(yǔ)言處理分析規(guī)則大致分為兩個(gè)層面,一個(gè)是淺層分析,如分詞,詞性標(biāo)注,通常只需對(duì)句子的局部范圍進(jìn)行分析處理;另一個(gè)層面是對(duì)語(yǔ)言進(jìn)行深層的處理,需要對(duì)句子進(jìn)行全局分析,在分析時(shí)通常對(duì)句法、語(yǔ)義以及語(yǔ)用這三個(gè)層次進(jìn)行分析。正則表達(dá)式規(guī)則一般是通過(guò)一些具有特定含義的字符來(lái)表示匹配規(guī)則的,例如,字符“ ~ ”匹配一個(gè)輸入或一行的開頭,如“ ~a”匹配“an A”,而不匹配“An a”;字符“$”匹配一個(gè)輸入或一行的結(jié)尾,如“a$”匹配“An a”,而不匹配“an A”;字符
匹配前面元字符O次或多次,如“ba*”將匹配“b”,“ba”,“baa”以及“baaa”等。通常情況下,自然語(yǔ)言處理分析規(guī)則主要用來(lái)解決同義詞的問(wèn)題,正則表達(dá)式規(guī)則主要用來(lái)處理長(zhǎng)尾詞。另外,還可以自定義一些匹配規(guī)則。例如,在本實(shí)施例中,可以預(yù)先定義“手機(jī)衛(wèi)士”以及“手機(jī)衛(wèi)士”都對(duì)應(yīng)“360手機(jī)衛(wèi)士”。通過(guò)匹配規(guī)則的設(shè)置,可以準(zhǔn)確地確定與用戶輸入的搜索詞相匹配的關(guān)鍵詞,而且,當(dāng)用戶輸入搜索詞時(shí)有少許偏差,例如,搜索詞中有一個(gè)錯(cuò)別字或丟掉了一個(gè)字,這時(shí),根據(jù)自然語(yǔ)言處理分析規(guī)則,仍然可以確定出用戶實(shí)際想要的關(guān)鍵詞。通俗地說(shuō),這種按照預(yù)設(shè)的匹配規(guī)則在緩存數(shù)據(jù)庫(kù)中查找與該搜索詞相匹配的關(guān)鍵詞的實(shí)現(xiàn)方式,就相當(dāng)于預(yù)先在緩存數(shù)據(jù)庫(kù)中建立了一個(gè)“詞池”(即步驟二中以鍵值對(duì)方式存儲(chǔ)的關(guān)鍵詞的集合),該“詞池”中預(yù)先存儲(chǔ)了所有熱門的關(guān)鍵詞,這些關(guān)鍵詞可以按照redis結(jié)構(gòu)分類存儲(chǔ)。當(dāng)獲取到搜索請(qǐng)求中的搜索詞之后,按照一定的模式識(shí)別方式(例如正則表達(dá)式匹配)在這個(gè)“詞池”中查找與該搜索詞匹配的關(guān)鍵詞,并獲取該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果。通過(guò)上述匹配規(guī)則確定出與輸入的搜索詞相匹配的關(guān)鍵詞之后,進(jìn)一步在緩存數(shù)據(jù)庫(kù)中查找該關(guān)鍵詞的查詢結(jié)果。步驟四、將查找到的與輸入的搜索詞相匹配的關(guān)鍵詞以及該關(guān)鍵詞的查詢結(jié)果發(fā) 送給該客戶端??蛻舳私邮盏皆撽P(guān)鍵詞以及該關(guān)鍵詞的查詢結(jié)果后,將查詢結(jié)果顯示給用戶。通過(guò)上面的步驟就實(shí)現(xiàn)了本發(fā)明提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法??蛇x地,由于某些類型的關(guān)鍵詞的查詢結(jié)果是與地域相關(guān)的,例如,對(duì)于“天氣預(yù)報(bào)”這一關(guān)鍵詞來(lái)說(shuō),北京的天氣與深圳的天氣通常是不同的,因此,“天氣預(yù)報(bào)”這一關(guān)鍵詞的查詢結(jié)果就是與地域相關(guān)的,對(duì)于這樣的關(guān)鍵詞,在緩存數(shù)據(jù)庫(kù)中存儲(chǔ)對(duì)應(yīng)的查詢結(jié)果時(shí),需要分別存儲(chǔ)與各個(gè)地域相對(duì)應(yīng)的查詢結(jié)果,即需要同時(shí)存儲(chǔ)北京、深圳甚至其他地區(qū)的天氣情況。相應(yīng)地,當(dāng)用戶輸入的搜索詞與地域相關(guān)時(shí),例如,當(dāng)用戶輸入“天氣”時(shí),本實(shí)施例中的方法進(jìn)一步包括根據(jù)包含“天氣”這一搜索詞的搜索請(qǐng)求中攜帶的IP地址來(lái)確定發(fā)送搜索請(qǐng)求的客戶端所處的地域,然后,在緩存數(shù)據(jù)庫(kù)中查找與該地域相對(duì)應(yīng)的查詢結(jié)果。例如,如果發(fā)送搜索請(qǐng)求的客戶端的IP地址顯示為北京,則向該客戶端返回的查詢結(jié)果默認(rèn)為北京的天氣情況。通過(guò)判斷客戶端的IP地址,并提供與該IP地址相對(duì)應(yīng)的查詢結(jié)果,可以使查詢結(jié)果更加符合用戶的需求。另外,本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法還可以進(jìn)一步為用戶提供補(bǔ)全搜索詞的服務(wù),即,當(dāng)用戶輸入的搜索詞僅為一部分時(shí),可以自動(dòng)地根據(jù)存儲(chǔ)的關(guān)鍵詞將搜索詞補(bǔ)全并提示給用戶。例如,當(dāng)用戶在生活服務(wù)類別的搜索框中輸入“火車”時(shí),可以自動(dòng)為用戶提示“火車票”以供用戶選擇,或者,也可以進(jìn)一步向用戶推薦多個(gè)與“火車”相關(guān)的詞匯供用戶選擇。另外,為了進(jìn)一步確保查詢結(jié)果的全面性,本發(fā)明實(shí)施例中提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法在獲取到客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求的步驟之后,進(jìn)一步包括步驟將搜索請(qǐng)求分發(fā)到搜索服務(wù)器,獲取搜索服務(wù)器從外部的數(shù)據(jù)來(lái)源服務(wù)器查找到的搜索詞對(duì)應(yīng)的查詢結(jié)果。相應(yīng)地,當(dāng)在緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找到的與搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),該方法進(jìn)一步包括將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給客戶端,其中,搜索服務(wù)器的查詢結(jié)果用于作為緩存數(shù)據(jù)庫(kù)的查詢結(jié)果的補(bǔ)充。具體地,每當(dāng)獲取到搜索請(qǐng)求后,同時(shí)將該搜索請(qǐng)求分發(fā)給搜索服務(wù)器,由該搜索服務(wù)器直接訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器,得到查詢結(jié)果,然后,對(duì)從緩存數(shù)據(jù)庫(kù)中獲取的查詢結(jié)果以及搜索服務(wù)器中獲取的查詢結(jié)果進(jìn)行合并,并根據(jù)需要選擇是否采用自然搜索服務(wù)器的查詢結(jié)果作為對(duì)緩存數(shù)據(jù)庫(kù)中的查詢結(jié)果的補(bǔ)充。例如,當(dāng)從緩存數(shù)據(jù)庫(kù)中獲取的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給客戶端作為補(bǔ)充。舉例來(lái)說(shuō),假設(shè)客戶端的結(jié)果顯示頁(yè)面中通常在一頁(yè)上顯示10條查詢結(jié)果,這樣,如果從緩存數(shù)據(jù)庫(kù)中獲取的查詢結(jié)果不足十個(gè)(例如查詢結(jié)果小于10個(gè),甚至查詢結(jié)果為0),則需要從搜索服務(wù)器獲取的查詢結(jié)果中挑選一定數(shù)量的查詢結(jié)果進(jìn)行補(bǔ)充,具體挑選時(shí),可以根據(jù)查詢結(jié)果的相關(guān)度或熱門度確定挑選順序。通過(guò)這樣的方式,由于搜索服務(wù)器可以從外部的數(shù)據(jù)來(lái)源服務(wù)器進(jìn)行更廣泛地搜索,因而既可以在通常情況下(即緩存數(shù)據(jù)庫(kù)緩存了用戶要查找的詞匯)為用戶提供更加高效快捷的服務(wù),又可以在特殊情況下(即緩存數(shù)據(jù)庫(kù)沒(méi)有緩存用戶要查找的詞匯或緩存內(nèi)容的數(shù)量不夠豐富),實(shí)現(xiàn)更加全面地搜索,以滿足用戶多樣化的搜索需求。圖2示出了本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)的結(jié)構(gòu)示意圖。如圖2所示,該用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)200包括通信設(shè)備210、緩存數(shù)據(jù)庫(kù)220以及抓取服務(wù)器230。其中,抓取服務(wù)器230預(yù)先提取關(guān)鍵詞列表,通過(guò)訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器300獲取關(guān)鍵詞列表中每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存·儲(chǔ)在緩存數(shù)據(jù)庫(kù)中。通信設(shè)備210獲取客戶端100發(fā)送的包含搜索詞的搜索請(qǐng)求,將搜索請(qǐng)求分發(fā)到緩存數(shù)據(jù)庫(kù)中,在緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果,將查詢結(jié)果發(fā)送給客戶端100??蛇x地,為了便于查找,緩存數(shù)據(jù)庫(kù)中存儲(chǔ)的關(guān)鍵詞以及每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果以鍵值對(duì)的方式存儲(chǔ),且關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果可以是包含該關(guān)鍵詞的網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照。而且,當(dāng)關(guān)鍵詞的查詢結(jié)果與地域相關(guān)時(shí),緩存數(shù)據(jù)庫(kù)230中存儲(chǔ)的關(guān)鍵詞的查詢結(jié)果還可以進(jìn)一步包括與各個(gè)地域相對(duì)應(yīng)的查詢結(jié)果,這樣,查找模塊220在預(yù)先設(shè)置的緩存數(shù)據(jù)庫(kù)230中查找關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果時(shí),進(jìn)一步根據(jù)客戶端100發(fā)送的搜索請(qǐng)求中攜帶的IP地址來(lái)確定該客戶端100所處的地域,并在緩存數(shù)據(jù)庫(kù)230中查找與該地域相對(duì)應(yīng)的查詢結(jié)果,從而可以為客戶端100發(fā)送與其所處的地域相符合的查詢結(jié)果。下面詳細(xì)描述一下本發(fā)明提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)??蛇x地,為了提高數(shù)據(jù)搜索的精準(zhǔn)性,縮短搜索時(shí)間,在本實(shí)施例中,預(yù)先將用戶可能會(huì)搜索的關(guān)鍵詞按照一定的分類規(guī)則進(jìn)行分類,相應(yīng)地,在提供給用戶的搜索界面中,針對(duì)每一類別,分別為用戶提供一個(gè)搜索框。例如,可以預(yù)先將搜索詞分為以下類別生活服務(wù)、投資理財(cái)以及娛樂(lè)資訊等,這樣,在搜索界面中可以進(jìn)一步包括生活服務(wù)對(duì)應(yīng)的搜索框、投資理財(cái)對(duì)應(yīng)的搜索框,以及娛樂(lè)資訊對(duì)應(yīng)的搜索框。這樣,當(dāng)用戶需要輸入搜索詞進(jìn)行搜索時(shí),會(huì)先判斷該搜索詞屬于哪一類別,然后,在該類別對(duì)應(yīng)的搜索框中輸入搜索詞。例如,當(dāng)用戶要查詢股票信息時(shí),會(huì)選擇投資理財(cái)對(duì)應(yīng)的搜索框進(jìn)行搜索,這樣,由于在搜索時(shí)限定了搜索詞所屬的分類,搜索時(shí)僅對(duì)同一分類中的關(guān)鍵詞進(jìn)行查找,因此,既提高了查找速度,又使得查找結(jié)果更加準(zhǔn)確,不易出現(xiàn)偏差。另外,還可以按照其他的分類方式進(jìn)行分類,例如,按照視頻、文本、圖片等方式進(jìn)行分類。下面以生活服務(wù)這一分類為例詳細(xì)描述一下本實(shí)施例中的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)的工作原理。首先,需要由抓取服務(wù)器230預(yù)先提取“生活服務(wù)”這一分類中的關(guān)鍵詞,組成關(guān)鍵詞列表,針對(duì)該關(guān)鍵詞列表中的每一關(guān)鍵詞,將包含該關(guān)鍵詞的網(wǎng)頁(yè)所對(duì)應(yīng)的URL與該關(guān)鍵詞一起關(guān)聯(lián)存儲(chǔ)在該關(guān)鍵詞列表里。具體地,在提取“生活服務(wù)”這一分類中的關(guān)鍵詞時(shí),抓取服務(wù)器230可以根據(jù)用戶的搜索頻率來(lái)確定要提取的關(guān)鍵詞,例如,將預(yù)定時(shí)段內(nèi)(例如,上一星期之內(nèi))用戶搜索的頻率較高的搜索詞篩選出來(lái)作為關(guān)鍵詞,其中,可以通過(guò)通信設(shè)備來(lái)完成對(duì)搜索詞的搜索頻率的統(tǒng)計(jì)。具體實(shí)現(xiàn)時(shí),可以設(shè)定一個(gè)搜索閾值,將預(yù)定時(shí)段內(nèi)的搜索次數(shù)大于該搜索閾值的搜索詞篩選出來(lái)作為關(guān)鍵詞。然后,針對(duì)每一關(guān)鍵詞,由抓取服務(wù)器230獲取包含該關(guān)鍵詞的網(wǎng)頁(yè)所對(duì)應(yīng)的URL信息,并將該URL信息與該關(guān)鍵詞關(guān)聯(lián)存儲(chǔ)。其中,對(duì)于每一關(guān)鍵詞,包含該關(guān)鍵詞的網(wǎng)頁(yè)的數(shù)量可能是一個(gè),也可能是多個(gè),當(dāng)網(wǎng)頁(yè)數(shù)量為多個(gè)時(shí),還可以進(jìn)一步判定多個(gè)網(wǎng)頁(yè)中的內(nèi)容是否重復(fù),當(dāng)多個(gè)網(wǎng)頁(yè)中的內(nèi)容重復(fù)時(shí),只要挑選其中的一個(gè)網(wǎng)頁(yè)的URL進(jìn)行存儲(chǔ)即可,這樣,既可以避免因存儲(chǔ)的數(shù)據(jù)量過(guò)大而占用存儲(chǔ)空間過(guò)多的問(wèn)題,也可以在用戶搜索時(shí)縮短查詢時(shí)間。然后,抓取服務(wù)器230根據(jù)生成的關(guān)鍵詞列表,訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器300,獲取該數(shù)據(jù)來(lái)源服務(wù)器300中存儲(chǔ)的與URL對(duì)應(yīng)的網(wǎng)頁(yè)數(shù)據(jù),并根據(jù)獲取的網(wǎng)頁(yè)數(shù)據(jù)生成該網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照,將該數(shù)據(jù)快照與URL對(duì)應(yīng)的關(guān)鍵詞關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)220中?!ぞ唧w地,網(wǎng)絡(luò)爬蟲根據(jù)關(guān)鍵詞列表中存儲(chǔ)的與關(guān)鍵詞對(duì)應(yīng)的URL,到數(shù)據(jù)來(lái)源服務(wù)器300中抓取與URL對(duì)應(yīng)的網(wǎng)頁(yè)數(shù)據(jù),抓取后會(huì)對(duì)網(wǎng)頁(yè)數(shù)據(jù)進(jìn)行分析并拍照,形成該網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照。該數(shù)據(jù)快照中包含該URL對(duì)應(yīng)的關(guān)鍵詞,因此,將該數(shù)據(jù)快照作為該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,與該關(guān)鍵詞一起關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中。具體存儲(chǔ)時(shí),為了方便查找,可以在緩存數(shù)據(jù)庫(kù)230中通過(guò)鍵值對(duì)(key-value)的方式存儲(chǔ),S卩,將關(guān)鍵詞作為key,將該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果(即數(shù)據(jù)快照)作為value。 通過(guò)上面的方式,該用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)就建立起了緩存數(shù)據(jù)庫(kù)220,上面只是以“生活服務(wù)”這一個(gè)類別為例進(jìn)行說(shuō)明的,實(shí)際上,對(duì)于其他類別的關(guān)鍵詞以及查詢結(jié)果的獲取,也是通過(guò)類似的方式實(shí)現(xiàn)的。緩存數(shù)據(jù)庫(kù)220建立好之后,該系統(tǒng)就可以通過(guò)通信設(shè)備210獲取用戶通過(guò)客戶端100發(fā)送的包含搜索詞的搜索請(qǐng)求,將搜索請(qǐng)求分發(fā)到緩存數(shù)據(jù)庫(kù)220中,在上述的緩存數(shù)據(jù)庫(kù)220中按照預(yù)設(shè)的匹配規(guī)則查找與輸入的搜索詞相匹配的關(guān)鍵詞,以及該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果。具體地,在通信設(shè)備210接收到包含搜索詞的搜索請(qǐng)求后,需要在緩存數(shù)據(jù)庫(kù)220中查找與該搜索詞相匹配的關(guān)鍵詞。本實(shí)施例中在判斷搜索詞與關(guān)鍵詞是否匹配時(shí),是根據(jù)預(yù)設(shè)的匹配規(guī)則進(jìn)行判斷的。其中,該預(yù)設(shè)的匹配規(guī)則可以是自然語(yǔ)言處理分析規(guī)則(簡(jiǎn)稱NLP),或者,也可以是正則表達(dá)式規(guī)則,或者,也可以是二者的結(jié)合。其中,自然語(yǔ)言處理分析規(guī)則大致分為兩個(gè)層面,一個(gè)是淺層分析,如分詞,詞性標(biāo)注,通常只需對(duì)句子的局部范圍進(jìn)行分析處理;另一個(gè)層面是對(duì)語(yǔ)言進(jìn)行深層的處理,需要對(duì)句子進(jìn)行全局分析,在分析時(shí)通常對(duì)句法、語(yǔ)義以及語(yǔ)用這三個(gè)層次進(jìn)行分析。正則表達(dá)式規(guī)則一般是通過(guò)一些具有特定含義的字符來(lái)表示匹配規(guī)則的,例如,字符“ ~ ”匹配一個(gè)輸入或一行的開頭,如“ ~a”匹配“an A”,而不匹配“An a”;字符“$”匹配一個(gè)輸入或一行的結(jié)尾,如“a$”匹配“An a”,而不匹配“an A”;字符
匹配前面元字符O次或多次,如“ba*”將匹配“b”,“ba”,“baa”以及“baaa”等。另夕卜,還可以自定義一些匹配規(guī)則。例如,在本實(shí)施例中,可以預(yù)先定義“手機(jī)衛(wèi)士”以及“手機(jī)衛(wèi)士”都對(duì)應(yīng)“360手機(jī)衛(wèi)士”。通過(guò)匹配規(guī)則的設(shè)置,可以準(zhǔn)確地確定與用戶輸入的搜索詞相匹配的關(guān)鍵詞,而且,當(dāng)用戶輸入搜索詞時(shí)有少許偏差,例如,搜索詞中有一個(gè)錯(cuò)別字或丟掉了一個(gè)字,這時(shí),根據(jù)自然語(yǔ)言處理分析規(guī)則,仍然可以確定出用戶實(shí)際想要的關(guān)鍵
ο通信設(shè)備210通過(guò)上述匹配規(guī)則確定出與輸入的搜索詞相匹配的關(guān)鍵詞之后,進(jìn)一步在緩存數(shù)據(jù)庫(kù)230中查找該關(guān)鍵詞的查詢結(jié)果,然后,通信設(shè)備210將查找到的與輸入的搜索詞相匹配的關(guān)鍵詞以及該關(guān)鍵詞的查詢結(jié)果發(fā)送給該客戶端100??蛻舳?00接收到該關(guān)鍵詞以及該關(guān)鍵詞的查詢結(jié)果后,將查詢結(jié)果顯示給用戶。圖3示出了當(dāng)客戶端發(fā)送的搜索請(qǐng)求中包含的搜索詞為“蜘蛛俠”時(shí)顯示的查詢結(jié)果的示意圖。通過(guò)圖3可以看出,當(dāng)用戶輸入“蜘蛛俠”時(shí),本發(fā)明提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng)會(huì)為用戶提供圖3中的四個(gè)包含蜘蛛俠的視頻內(nèi)容。這四個(gè)視頻的共 同特點(diǎn)是在內(nèi)容簡(jiǎn)介部分都包含“蜘蛛俠”三個(gè)字,與搜索詞匹配,因此,作為查詢結(jié)果提供給用戶。在上面描述的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)中,抓取服務(wù)器230還可以進(jìn)一步按照預(yù)設(shè)的頻率對(duì)關(guān)鍵詞列表中的關(guān)鍵詞和/或關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果進(jìn)行更新。例如,可以設(shè)置每天或每星期進(jìn)行一次更新,具體實(shí)現(xiàn)時(shí),可以從如下兩方面進(jìn)行更新第一個(gè)方面為,每隔一段時(shí)間后,將近期用戶搜索頻率較高的搜索詞添加到關(guān)鍵詞列表中,并獲取新添加的關(guān)鍵詞的查詢結(jié)果,也就是對(duì)關(guān)鍵詞列表中的關(guān)鍵詞數(shù)量進(jìn)行更新,以確保及時(shí)加入近期較熱門的搜索詞;第二個(gè)方面為,每隔一段時(shí)間后,針對(duì)關(guān)鍵詞列表中現(xiàn)有的關(guān)鍵詞,重新從數(shù)據(jù)來(lái)源服務(wù)器上獲取每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,也就是對(duì)關(guān)鍵詞列表中每一關(guān)鍵詞的查詢結(jié)果進(jìn)行更新,以確保所有關(guān)鍵詞的查詢結(jié)果都是比較新的。而且,在上面描述的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)中,緩存數(shù)據(jù)庫(kù)中還可以進(jìn)一步包括排序模塊,用于對(duì)緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞進(jìn)行排序。具體排序時(shí),可以根據(jù)一定的時(shí)間段內(nèi)(例如一天、一月等)用戶的點(diǎn)擊頻次來(lái)確定關(guān)鍵詞的排列順序?;蛘?,也可以為每個(gè)關(guān)鍵詞設(shè)置一個(gè)權(quán)重,根據(jù)權(quán)重的大小來(lái)確定關(guān)鍵詞的排列順序。具體地,在確定每個(gè)關(guān)鍵詞的權(quán)重時(shí),可以結(jié)合多方面的因素來(lái)確定,例如,結(jié)合關(guān)鍵詞的搜索頻率、關(guān)鍵詞的重要性和/或一定時(shí)間段內(nèi)用戶的點(diǎn)擊頻次來(lái)確定。通過(guò)對(duì)緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞進(jìn)行排序,可以使用戶優(yōu)選找到最符合需求的關(guān)鍵詞,能夠提高查找效率。另外,為了進(jìn)一步確保查詢結(jié)果的全面性,本發(fā)明實(shí)施例中提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)還可以進(jìn)一步包括搜索服務(wù)器(圖中未示出)。該搜索服務(wù)器一端與通信設(shè)備210相連,另一端與外部的數(shù)據(jù)來(lái)源服務(wù)器相連,用于從外部的數(shù)據(jù)來(lái)源服務(wù)器查找搜索詞對(duì)應(yīng)的查詢結(jié)果。具體地,每當(dāng)通信設(shè)備210接收到搜索請(qǐng)求后,同時(shí)將該搜索請(qǐng)求分發(fā)給該搜索服務(wù)器,由該搜索服務(wù)器直接訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器,得到查詢結(jié)果,并將該查詢結(jié)果提供給通信設(shè)備210,由通信設(shè)備210對(duì)從緩存數(shù)據(jù)庫(kù)中獲取的查詢結(jié)果以及搜索服務(wù)器中獲取的查詢結(jié)果進(jìn)行合并,并根據(jù)需要選擇是否采用自然搜索服務(wù)器的查詢結(jié)果作為對(duì)緩存數(shù)據(jù)庫(kù)中的查詢結(jié)果的補(bǔ)充。也就是說(shuō),通信設(shè)備210具有分發(fā)合并的功能。例如,當(dāng)通信設(shè)備210從緩存數(shù)據(jù)庫(kù)中獲取的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給客戶端作為補(bǔ)充。舉例來(lái)說(shuō),假設(shè)客戶端的結(jié)果顯示頁(yè)面中通常在一頁(yè)上顯示10條查詢結(jié)果,這樣,如果通信設(shè)備210從緩存數(shù)據(jù)庫(kù)中獲取的查詢結(jié)果不足十個(gè)(例如查詢結(jié)果小于10個(gè),甚至查詢結(jié)果為0),則需要從搜索服務(wù)器獲取的查詢結(jié)果中挑選一定數(shù)量的查詢結(jié)果進(jìn)行補(bǔ)充,具體挑選時(shí),可以根據(jù)查詢結(jié)果的相關(guān)度或熱門度確定挑選順序。通過(guò)這樣的方式,可以實(shí)現(xiàn)更加全面地搜索,從而為用戶提供更多的搜索結(jié)果。
本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),在搜索之前,可以預(yù)先對(duì)所有的關(guān)鍵詞進(jìn)行分類,然后,在緩存數(shù)據(jù)庫(kù)中將關(guān)鍵詞按照類別進(jìn)行存儲(chǔ),這樣,用戶在輸入搜索詞時(shí),可以在該搜索詞所屬分類對(duì)應(yīng)的搜索框中進(jìn)行搜索,這樣,本發(fā)明中的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng)則只對(duì)該分類中的關(guān)鍵詞進(jìn)行查詢,這一方式也被稱為垂直領(lǐng)域搜索。采用這種方式,一方面,由于只查詢一個(gè)分類中的關(guān)鍵詞,無(wú)需檢索全部的關(guān)鍵詞,因此,提高了查詢的速度。另一方面,由于確定了搜索詞所屬的分類,不會(huì)錯(cuò)誤地將其他類別的查詢結(jié)果誤當(dāng)作用戶輸入的搜索詞的查詢結(jié)果,因此,還提高了查詢的精準(zhǔn)度,關(guān)于這一點(diǎn),當(dāng)搜索詞有可能同時(shí)屬于多個(gè)類別時(shí)尤為重要。
而且,本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),在緩存數(shù)據(jù)庫(kù)中通過(guò)鍵值對(duì)的方式存儲(chǔ)關(guān)鍵詞和對(duì)應(yīng)的查詢結(jié)果,這種存儲(chǔ)方式簡(jiǎn)單明了,占用存儲(chǔ)空間小,且算法簡(jiǎn)單、檢索速度快,從而進(jìn)一步提高了查詢的速度。
另外,本實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),預(yù)先將關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果以數(shù)據(jù)快照的方式存儲(chǔ)在了本地的緩存數(shù)據(jù)庫(kù)中,因此,向用戶提供服務(wù)時(shí), 無(wú)需再訪問(wèn)數(shù)據(jù)來(lái)源服務(wù)器,只需訪問(wèn)本地的緩存數(shù)據(jù)庫(kù)即可,由此降低了合作數(shù)據(jù)服務(wù) (即數(shù)據(jù)來(lái)源服務(wù)器)的壓力。而且,由于有了緩存數(shù)據(jù)庫(kù),網(wǎng)絡(luò)爬蟲只需在向緩存數(shù)據(jù)庫(kù)中存儲(chǔ)關(guān)鍵詞的階段去數(shù)據(jù)來(lái)源服務(wù)器上抓取數(shù)據(jù)即可,而在后續(xù)處理用戶搜索請(qǐng)求時(shí), 該系統(tǒng)只要根據(jù)緩存數(shù)據(jù)庫(kù)上已經(jīng)存儲(chǔ)的數(shù)據(jù)就可以為用戶提供查詢服務(wù),不必像常規(guī)的搜索方式那樣,需要每次在處理用戶搜索請(qǐng)求時(shí)都由網(wǎng)絡(luò)爬蟲去數(shù)據(jù)來(lái)源服務(wù)器上抓取數(shù)據(jù),從而也減輕了網(wǎng)絡(luò)爬蟲的爬取壓力。而且,由于本發(fā)明中的緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞可以按照分類進(jìn)行存儲(chǔ),因此還進(jìn)一步減輕了網(wǎng)絡(luò)爬蟲爬取垂直數(shù)據(jù)(同一分類下的數(shù)據(jù))的壓力。通過(guò)上述方式,有利于提高查詢速度。
另外,本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),在確定與搜索詞相匹配的關(guān)鍵詞時(shí),預(yù)先定義了匹配規(guī)則,例如,自然語(yǔ)言處理分析規(guī)則或正則表達(dá)式規(guī)則,這樣,在匹配時(shí)即使用戶輸入的搜索詞有少許誤差,也可以精準(zhǔn)地匹配到合適的關(guān)鍵詞,從而提高了查詢的精準(zhǔn)度。
綜上所述,本發(fā)明實(shí)施例提供的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),提高了查詢速度以及查詢的精準(zhǔn)度。
在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。 各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說(shuō)明書中,說(shuō)明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒(méi)有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說(shuō)明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說(shuō),如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此, 遵循具體實(shí)施方式
的權(quán)利要求書由此明確地并入該具體實(shí)施方式
,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過(guò)程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說(shuō)明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過(guò)程或單元進(jìn)行組合。除非另外明確陳述,本說(shuō)明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來(lái)代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來(lái)使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以 它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP )來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng)中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說(shuō)明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中, 不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來(lái)實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過(guò)同一個(gè)硬件項(xiàng)來(lái)具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。1權(quán)利要求
1.一種用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法,包括 預(yù)先提取關(guān)鍵詞列表,通過(guò)訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器獲取所述關(guān)鍵詞列表中每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中; 獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求,將所述搜索請(qǐng)求分發(fā)到所述緩存數(shù)據(jù)庫(kù)中,在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果; 將所述關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果發(fā)送給所述客戶端; 其中,所述獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求的步驟之后,進(jìn)一步包括 將所述搜索請(qǐng)求分發(fā)到搜索服務(wù)器,獲取所述搜索服務(wù)器從外部的數(shù)據(jù)來(lái)源服務(wù)器查找到的所述搜索詞對(duì)應(yīng)的查詢結(jié)果; 當(dāng)在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找到的與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),該方法進(jìn)一步包括 將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給所述客戶端,其中,所述搜索服務(wù)器的查詢結(jié)果用于作為所述緩存數(shù)據(jù)庫(kù)的查詢結(jié)果的補(bǔ)充。
2.如權(quán)利要求I所述的方法,所述預(yù)設(shè)的匹配規(guī)則包括自然語(yǔ)言處理分析規(guī)則,和/或正則表達(dá)式規(guī)則。
3.如權(quán)利要求I或2所述的方法,所述緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果以鍵值對(duì)的方式存儲(chǔ)。
4.如權(quán)利要求3所述的方法,其中,所述緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞按照預(yù)設(shè)的分類存儲(chǔ),則所述將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在緩存數(shù)據(jù)庫(kù)中進(jìn)一步包括 確定每一關(guān)鍵詞所屬的分類; 針對(duì)每一關(guān)鍵詞,對(duì)該關(guān)鍵詞及其所屬的分類進(jìn)行加密運(yùn)算,將得到的加密結(jié)果作為鍵,將該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果作為所述鍵對(duì)應(yīng)的值。
5.如權(quán)利要求1-4中任一個(gè)所述的方法,當(dāng)所述緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞按照預(yù)設(shè)的分類存儲(chǔ)時(shí),所述搜索請(qǐng)求中進(jìn)一步包括搜索詞所屬的分類; 則查找與所述搜索詞相匹配的關(guān)鍵詞時(shí),在分類與所述搜索詞所屬分類相同的關(guān)鍵詞中查找。
6.如權(quán)利要求1-5中任一個(gè)所述的方法,所述關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果是包含所述關(guān)鍵詞的網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照,所述數(shù)據(jù)快照用于存儲(chǔ)網(wǎng)頁(yè)的裸數(shù)據(jù)或html數(shù)據(jù)。
7.如權(quán)利要求1-6中任一個(gè)所述的方法,當(dāng)所述關(guān)鍵詞的查詢結(jié)果與地域相關(guān)時(shí),所述緩存數(shù)據(jù)庫(kù)中存儲(chǔ)的所述關(guān)鍵詞的查詢結(jié)果進(jìn)一步包括與各個(gè)地域相對(duì)應(yīng)的查詢結(jié)果, 則在緩存數(shù)據(jù)庫(kù)中查找所述關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果進(jìn)一步包括根據(jù)所述搜索請(qǐng)求中攜帶的IP地址確定所述客戶端所處的地域,在緩存數(shù)據(jù)庫(kù)中查找與所述地域相對(duì)應(yīng)的查詢結(jié)果。
8.一種用于對(duì)數(shù)據(jù)進(jìn)行搜索的系統(tǒng),包括通信設(shè)備、緩存數(shù)據(jù)庫(kù)以及抓取服務(wù)器,其中, 抓取服務(wù)器,適于預(yù)先提取關(guān)鍵詞列表,通過(guò)訪問(wèn)外部的數(shù)據(jù)來(lái)源服務(wù)器獲取所述關(guān)鍵詞列表中每一關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果,將每一關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果關(guān)聯(lián)存儲(chǔ)在所述緩存數(shù)據(jù)庫(kù)中;通信設(shè)備,適于獲取客戶端發(fā)送的包含搜索詞的搜索請(qǐng)求,將所述搜索請(qǐng)求分發(fā)到所述緩存數(shù)據(jù)庫(kù)中,在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果,還適于將所述查詢結(jié)果發(fā)送給所述客戶端; 搜索服務(wù)器,適于從外部的數(shù)據(jù)來(lái)源服務(wù)器查找搜索詞對(duì)應(yīng)的查詢結(jié)果; 則所述通信設(shè)備進(jìn)一步適于將所述搜索請(qǐng)求分發(fā)到所述搜索服務(wù)器,獲取所述搜索服務(wù)器查找到的所述搜索詞對(duì)應(yīng)的查詢結(jié)果;以及 當(dāng)在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找到的與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給所述客戶端,其中,所述搜索服務(wù)器的查詢結(jié)果用于作為所述緩存數(shù)據(jù)庫(kù)的查詢結(jié)果的補(bǔ)充。
9.如權(quán)利要求8所述的系統(tǒng),所述預(yù)設(shè)的匹配規(guī)則包括自然語(yǔ)言處理分析規(guī)則,和/或正則表達(dá)式規(guī)則。
10.如權(quán)利要求8或9所述的系統(tǒng),所述緩存數(shù)據(jù)庫(kù)適于將所述關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果以鍵值對(duì)的方式存儲(chǔ)。
11.如權(quán)利要求10中任一個(gè)所述的系統(tǒng),所述緩存數(shù)據(jù)庫(kù)中的關(guān)鍵詞按照預(yù)設(shè)的分類存儲(chǔ),則所述緩存數(shù)據(jù)庫(kù)進(jìn)一步適于 確定每一關(guān)鍵詞所屬的分類; 針對(duì)每一關(guān)鍵詞,對(duì)該關(guān)鍵詞及其所屬的分類進(jìn)行加密運(yùn)算,將得到的加密結(jié)果作為鍵,將該關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果作為所述鍵對(duì)應(yīng)的值。
12.如權(quán)利要求8-11中任一個(gè)所述的系統(tǒng),所述關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果是包含所述關(guān)鍵詞的網(wǎng)頁(yè)對(duì)應(yīng)的數(shù)據(jù)快照,所述數(shù)據(jù)快照用于存儲(chǔ)網(wǎng)頁(yè)的裸數(shù)據(jù)或html數(shù)據(jù)。
13.如權(quán)利要求8-12中任一個(gè)所述的系統(tǒng),當(dāng)所述關(guān)鍵詞的查詢結(jié)果與地域相關(guān)時(shí),所述緩存數(shù)據(jù)庫(kù)中存儲(chǔ)的所述關(guān)鍵詞的查詢結(jié)果進(jìn)一步包括與各個(gè)地域相對(duì)應(yīng)的查詢結(jié)果, 則所述查找模塊進(jìn)一步適于根據(jù)所述搜索請(qǐng)求中攜帶的IP地址確定所述客戶端所處的地域,在預(yù)先設(shè)置的緩存數(shù)據(jù)庫(kù)中查找與所述地域相對(duì)應(yīng)的查詢結(jié)果。
14.如權(quán)利要求8-13中任一個(gè)所述的系統(tǒng),所述抓取服務(wù)器按照預(yù)設(shè)的頻率對(duì)所述關(guān)鍵詞列表中的關(guān)鍵詞和/或所述關(guān)鍵詞對(duì)應(yīng)的查詢結(jié)果進(jìn)行更新。
全文摘要
本發(fā)明公開了一種用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng),該系統(tǒng)包括通信設(shè)備、緩存數(shù)據(jù)庫(kù)、抓取服務(wù)器以及搜索服務(wù)器,其中,當(dāng)在所述緩存數(shù)據(jù)庫(kù)中按照預(yù)設(shè)的匹配規(guī)則查找到的與所述搜索詞相匹配的關(guān)鍵詞及其對(duì)應(yīng)的查詢結(jié)果的數(shù)量少于預(yù)設(shè)數(shù)量時(shí),將獲取的搜索服務(wù)器的查詢結(jié)果發(fā)送給所述客戶端,其中,所述搜索服務(wù)器的查詢結(jié)果用于作為所述緩存數(shù)據(jù)庫(kù)的查詢結(jié)果的補(bǔ)充。本發(fā)明的用于對(duì)數(shù)據(jù)進(jìn)行搜索的方法和系統(tǒng)可以解決現(xiàn)有技術(shù)中同時(shí)設(shè)置信息數(shù)據(jù)庫(kù)和索引數(shù)據(jù)庫(kù)兩個(gè)數(shù)據(jù)庫(kù)時(shí)需要用復(fù)雜的算法才能完成數(shù)據(jù)匹配過(guò)程,導(dǎo)致用戶等待時(shí)間過(guò)長(zhǎng)的問(wèn)題,能夠取得根據(jù)預(yù)設(shè)的緩存數(shù)據(jù)庫(kù)和匹配規(guī)則迅速查找到匹配的數(shù)據(jù)的有益效果。
文檔編號(hào)G06F17/30GK102915380SQ201210469129
公開日2013年2月6日 申請(qǐng)日期2012年11月19日 優(yōu)先權(quán)日2012年11月19日
發(fā)明者李天華 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司