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

面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng)和方法

文檔序號(hào):6460136閱讀:147來(lái)源:國(guó)知局
專利名稱:面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng)和方法
面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng)和方法技術(shù)領(lǐng)域本方法涉及一種數(shù)據(jù)集成領(lǐng)域,尤其是涉及一種面向領(lǐng)域的Web數(shù) 據(jù)集成系統(tǒng)和方法。
背景技術(shù)
目前,在De印Web上進(jìn)行數(shù)據(jù)集成已經(jīng)有一些研究,主要有兩種方 法接口集成與查詢結(jié)果集成。所謂接口集成,是指將各個(gè)Deep Web網(wǎng)站的搜索框(即查詢接口 )集成起來(lái),這樣用戶可以通過(guò)這樣一個(gè)集成的接口,將關(guān)鍵字發(fā)送到各 個(gè)網(wǎng)站的搜索框上,然后再將搜索結(jié)果取回。使用這種方式進(jìn)行集成, 本地服務(wù)器上是不保存數(shù)據(jù)的。在Deep Web上進(jìn)行數(shù)據(jù)集成的另 一種方式是查詢結(jié)果集成。它將各 個(gè)Deep Web網(wǎng)站上的所有數(shù)據(jù)爬耳又到本地,并實(shí)現(xiàn)定時(shí)更新。這樣,用 戶提交一個(gè)查詢的時(shí)候,實(shí)際上是在本地服務(wù)器上進(jìn)行查詢,并獲取查 詢結(jié)果。這種方法和現(xiàn)有通用搜索引擎,如Google、百度等相似,都在 本地服務(wù)器上保存數(shù)據(jù),并自己建立索引方便用戶查詢。這種方式又分 為3種方法,分別為手工的、半自動(dòng)的和全自動(dòng)的方法。其中,手工的 方法是最早提出來(lái)的,但是它需要用戶有較為豐富的相關(guān)知識(shí)與編程經(jīng) 驗(yàn)。半自動(dòng)的方法正式為了解決這個(gè)問(wèn)題而提出來(lái)的,通常它會(huì)提供一 種圖形化的界面來(lái)輔助生成爬取程序。全自動(dòng)的方法希望能夠?qū)⒂脩魪?底解放出來(lái),但是這些方法通常有過(guò)多的假設(shè),離實(shí)際應(yīng)用還有一段距 離。同時(shí),當(dāng)面對(duì)較為復(fù)雜的頁(yè)面時(shí),往往不能得到理想的結(jié)果。而在已有的自動(dòng)方法中,實(shí)際表明,它們所得到的結(jié)果距離真正的 Web應(yīng)用還有很大的距離,主要集中在以下幾點(diǎn)1、 自動(dòng)的方法要么存在許多假設(shè),要么無(wú)法達(dá)到很好的效果。2、 自動(dòng)的方法要在初始時(shí)設(shè)置許多參數(shù),這些參數(shù)帶有較多的主觀 因素。同時(shí)一旦變更領(lǐng)域,這些參數(shù)往往就會(huì)失效,用不得不重新耗費(fèi)大量經(jīng)歷設(shè)置參數(shù)。3、自動(dòng)的方法很難做到在記錄(record )層次的區(qū)分,而在屬性(item) 層次的區(qū)分就更不理想。發(fā)明內(nèi)容為了解決上述傳統(tǒng)問(wèn)題,因此本發(fā)明的 一 個(gè)目的就是提出了 一種面 向領(lǐng)i或的Web凝:才居集成系統(tǒng)和方法。在本發(fā)明的 一個(gè)方面中,提出了 一種面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng), 該系統(tǒng)包括數(shù)據(jù)源;數(shù)據(jù)集成模塊,用于將來(lái)自數(shù)據(jù)源的數(shù)據(jù)集成到 本地;數(shù)據(jù)處理模塊,用于對(duì)集成到本地的數(shù)據(jù)進(jìn)行處理;以及應(yīng)用模 塊,用于將集成出來(lái)的數(shù)據(jù)提供給用戶。在這個(gè)方面中,其中數(shù)據(jù)集成模塊包括基于配置文件的數(shù)據(jù)集成 系統(tǒng),用于比較精確地對(duì)De印Web上的數(shù)據(jù)進(jìn)行抽取與集成;以及普通 檢索系統(tǒng),用于搭建大規(guī)模的、快速的、全自動(dòng)的但準(zhǔn)確率稍低的集成 系統(tǒng)。在這個(gè)方面中,其中數(shù)據(jù)處理模塊包括數(shù)據(jù)存儲(chǔ)單元,用于存儲(chǔ) 集成抽取出來(lái)的各個(gè)網(wǎng)站的數(shù)據(jù);索引單元,用于對(duì)集成來(lái)的數(shù)據(jù)屬性 進(jìn)行索引以方便未來(lái)查詢時(shí)的各項(xiàng)檢索;以及全文索引單元,用于對(duì)集 成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行全文索引以處理大規(guī)模數(shù)據(jù)集成后的關(guān)鍵字檢索 問(wèn)題。在這個(gè)方面中,其中基于配置文件的Web數(shù)據(jù)集成系統(tǒng)包括多個(gè) 數(shù)據(jù)源;多個(gè)配置文件單元,這多個(gè)配置文件單元的每一個(gè)與上述多個(gè) 數(shù)據(jù)源的每一個(gè)相對(duì)應(yīng);統(tǒng)一的集成單元,用于集成底層的各個(gè)數(shù)據(jù)源 并且利用數(shù)據(jù)源所對(duì)應(yīng)的配置文件,采用統(tǒng)一的方式,對(duì)數(shù)據(jù)源中的數(shù) 據(jù)進(jìn)行抽??;以及本地服務(wù)器,用于保存集成起來(lái)的所有數(shù)據(jù),以便用 戶可以直接在本地服務(wù)器上對(duì)數(shù)據(jù)進(jìn)行處理。在這個(gè)方面中,其中統(tǒng)一的集成單元包括讀取模塊,用于從 list.xml中讀取一個(gè)查詢關(guān)鍵字;發(fā)送模塊,用于根據(jù)config. xml中的 配置發(fā)送查詢請(qǐng)求;獲取總頁(yè)數(shù)模塊,用于根據(jù)config. xml中的頁(yè)數(shù)配 置信息抽取出這次查詢的返回結(jié)果的總頁(yè)數(shù);獲取第一頁(yè)模塊,用于依 照GET或者POST方式去獲取第一頁(yè);獲取記錄模塊,用于根據(jù)配置文件中的信息,從config. xml中讀取記錄xpath,將所有記錄抽出;獲取記 錄屬性值模塊,用于從config. xml中讀取屬性xpath以提出記錄的各項(xiàng) 屬性值;獲取頁(yè)面模塊,用于在如果這條記錄還有詳細(xì)頁(yè)面的情況下根 據(jù)config. xml中的配置獲取url,即獲取這條記錄的詳細(xì)頁(yè)面;獲取頁(yè) 面屬性值才莫塊,用于從detail, xml中讀取屬性xpath,即才艮據(jù)詳細(xì)頁(yè)面 的配置文件,將記錄詳細(xì)頁(yè)面中的一些屬性值也抽取出來(lái);以及獲取結(jié) 果模塊,用于成功獲取此次查詢結(jié)果。在這個(gè)方面中,其中如果抽取的頁(yè)數(shù)小于總頁(yè)數(shù),則會(huì)繼續(xù)抽取下 一頁(yè),否則這個(gè)以這個(gè)關(guān)鍵字的查詢抽取就已經(jīng)完成。在這個(gè)方面中,其中查詢請(qǐng)求的方式有兩種,分別是GET方式和POST 方式,如果是GET方式,則會(huì)從config.xml中獲取需要發(fā)送的查詢字符 串;如果是POST方式,則會(huì)從配置文件中獲取需要POST過(guò)去的參數(shù)。此外,在本發(fā)明的另一方面中,提出了一種用在面向領(lǐng)域的Web數(shù) 據(jù)集成系統(tǒng)中的面向領(lǐng)域的Web數(shù)據(jù)集成方法,所述面向領(lǐng)域的Web數(shù) 據(jù)集成系統(tǒng)包括數(shù)據(jù)源、具有基于配置文件的數(shù)據(jù)集成系統(tǒng)的數(shù)據(jù)集成 模塊、數(shù)據(jù)處理模塊,以及應(yīng)用模塊,其中基于配置文件的數(shù)據(jù)集成系 統(tǒng)包括多個(gè)數(shù)據(jù)源、與上述多個(gè)數(shù)據(jù)源的每一個(gè)相對(duì)應(yīng)多個(gè)配置文件單 元、統(tǒng)一的集成單元、以及本地服務(wù)器,該面向領(lǐng)域的Web數(shù)據(jù)集成方 法包括數(shù)據(jù)集成步驟,數(shù)據(jù)集成模塊將來(lái)自數(shù)據(jù)源的數(shù)據(jù)集成到本地; 數(shù)據(jù)處理步驟,數(shù)據(jù)處理模塊對(duì)集成到本地的數(shù)據(jù)進(jìn)行處理;以及應(yīng)用 步驟,用于將集成出來(lái)的數(shù)據(jù)提供給用戶。在這個(gè)方面中,其中數(shù)據(jù)集成步驟包括基于配置文件的數(shù)據(jù)集成 步驟,用于比較精確地對(duì)De印Web上的數(shù)據(jù)進(jìn)行抽取與集成;以及普通 檢索步驟,用于搭建大規(guī)模的、快速的、全自動(dòng)的但準(zhǔn)確率稍低的集成 系統(tǒng)。在這個(gè)方面中,其中數(shù)據(jù)處理步驟包括存儲(chǔ)集成抽取出來(lái)的各個(gè) 網(wǎng)站的數(shù)據(jù);對(duì)集成來(lái)的數(shù)據(jù)屬性進(jìn)行索引以方便未來(lái)查詢時(shí)的各項(xiàng)檢 索;以及對(duì)集成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行全文索引以處理大規(guī)模數(shù)據(jù)集成后 的關(guān)鍵字檢索問(wèn)題。在這個(gè)方面中,其中基于配置文件的數(shù)據(jù)集成步驟包括統(tǒng)一的集 成步驟,統(tǒng)一的集成單元集成底層的各個(gè)數(shù)據(jù)源并且利用數(shù)據(jù)源所對(duì)應(yīng)的配置文件,采用統(tǒng)一的方式,對(duì)數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行抽?。灰约氨4?步驟,本地服務(wù)器保存集成起來(lái)的所有數(shù)據(jù),以便用戶可以直接在本地 服務(wù)器上對(duì)數(shù)據(jù)進(jìn)行處理。在這個(gè)方面中,其中統(tǒng)一的集成步驟包括從list, xml中讀取一個(gè) 查詢關(guān)4建字;才艮據(jù)config. xml中的配置發(fā)送查詢請(qǐng)求;才艮據(jù)config. xml 中的頁(yè)數(shù)配置信息抽取出這次查詢的返回結(jié)果的總頁(yè)數(shù);依照GET或者 POST方式去獲取第一頁(yè),根據(jù)配置文件中的信息,從config. xml中讀取 記錄xpath,將所有記錄抽出;從conf ig. xml中讀取屬性xpath以提出 記錄的各項(xiàng)屬性值;如果這條記錄還有詳細(xì)頁(yè)面的情況下根據(jù) config. xml中的配置獲取url,即獲取這條記錄的詳細(xì)頁(yè)面;/人 detail, xml中讀取屬性xpath,即才艮據(jù)詳細(xì)頁(yè)面的配置文件,將記錄詳 細(xì)頁(yè)面中的一些屬性值也抽取出來(lái);以及獲取結(jié)果模塊,用于成功獲取 此次查詢結(jié)果。在這個(gè)方面中,其中如果抽取的頁(yè)數(shù)小于總頁(yè)數(shù),則會(huì)繼續(xù)抽取下 一頁(yè),否則這個(gè)以這個(gè)關(guān)鍵字的查詢抽取就已經(jīng)完成。在這個(gè)方面中,其中查詢請(qǐng)求的方式有兩種,分別是GET方式和POST 方式,如果是GET方式,則會(huì)從config. xml中獲取需要發(fā)送的查詢字符 串;如果是POST方式,則會(huì)從配置文件中獲取需要POST過(guò)去的參數(shù)。本發(fā)明考慮了一種在保證高精確性的前"R下,盡量減少人工參與程 度的介于半自動(dòng)與全自動(dòng)之間的集成方法。提出了 一種以模擬用戶在某 個(gè)網(wǎng)站上實(shí)際點(diǎn)擊行為的方式,通過(guò)專門針對(duì)這個(gè)網(wǎng)站的配置文件,實(shí) 現(xiàn)對(duì)這個(gè)網(wǎng)站所有信息的集成以及對(duì)每條記錄各個(gè)屬性段的精確抽取, 并實(shí)現(xiàn)凄t據(jù)的動(dòng)態(tài)更新的查詢結(jié)果集成辦法。


結(jié)合隨后的附圖,從下面的詳細(xì)說(shuō)明中可顯而易見(jiàn)的得出本發(fā)明的 上述及其他目的、特征及優(yōu)點(diǎn)。在附圖中圖l給出了根據(jù)本發(fā)明的Deep Web數(shù)據(jù)集成系統(tǒng)的框架圖; 圖2給出了根據(jù)本發(fā)明的Deep Web的數(shù)據(jù)集成系統(tǒng)的數(shù)據(jù)流圖; 圖3給出了才艮據(jù)本發(fā)明的基于配置文件的集成系統(tǒng)的框架圖; 圖4給出了根據(jù)本發(fā)明的Deep Web查詢接口的示意圖;圖5給出了根據(jù)本發(fā)明的De印Web查詢結(jié)果列表的示意圖;圖6給出了才艮據(jù)本發(fā)明的HMTL轉(zhuǎn)換成XML示例;圖7給出了根據(jù)本發(fā)明的動(dòng)態(tài)獲取網(wǎng)站入口的流程圖;圖8給出了統(tǒng)一集成單元的工作流程圖;以及圖9給出了統(tǒng)一集成單元的框架圖。
具體實(shí)施方式
本發(fā)明處理的是De印Web (深層網(wǎng)絡(luò))上的數(shù)據(jù)集成。與Google、 百度等通用搜索引擎有些類似。當(dāng)然, 一個(gè)關(guān)鍵的不同點(diǎn)是Google、 百度只能依照鏈接獲取頁(yè)面,因此所獲取的只是Surface Web (淺層網(wǎng)絡(luò)) 的內(nèi)容。而目前De印Web (深層網(wǎng)絡(luò))的數(shù)量是Surface Web (淺層網(wǎng) 絡(luò))的4倍,并且在繼續(xù)增多。因此在網(wǎng)絡(luò)上存在著大量普通搜索引擎 如Google、百度所4企索不到的資源。電子商務(wù)網(wǎng)站、工作信息網(wǎng)站等包 含查詢接口、搜索框的網(wǎng)站即是Deep Web (深層網(wǎng)絡(luò))的典型代表。現(xiàn)在參考圖1,對(duì)基于上述思想的Deep Web數(shù)據(jù)集成系統(tǒng)框架圖進(jìn) 行詳細(xì)的說(shuō)明。圖1給出了根據(jù)本發(fā)明的Deep Web數(shù)據(jù)集成系統(tǒng)的框架 圖。如圖l所示,該De印Web數(shù)據(jù)集成系統(tǒng)是一個(gè)四層結(jié)構(gòu)。 底層面向的領(lǐng)域是所要處理的Deep Web數(shù)據(jù)源,我們將其按照領(lǐng)域 進(jìn)行分類,可以分為圖書信息領(lǐng)域、工作信息領(lǐng)域、政府新聞?lì)I(lǐng)域等等。 由于我們的目標(biāo)是將所有數(shù)據(jù)集成到本地再進(jìn)行處理,但由于不同領(lǐng)域 的數(shù)據(jù)結(jié)構(gòu)大不相同,因此,我們?cè)诩傻臅r(shí)候,考慮的是面向領(lǐng)域的 數(shù)據(jù)集成。在該領(lǐng)域之上是數(shù)據(jù)集成模塊。該數(shù)據(jù)集成模塊主要分為兩塊基 于配置文件的數(shù)據(jù)集成系統(tǒng)(Config System),用于比較精確地對(duì)Deep Web上的數(shù)據(jù)進(jìn)行抽取與集成;普通檢索系統(tǒng)(Search System),用于搭 建大規(guī)模的、快速的、全自動(dòng)的但準(zhǔn)確率稍低的集成系統(tǒng)。由于基于配 置文件的數(shù)據(jù)集成系統(tǒng)的特殊性,它更關(guān)注的是獲取精確的數(shù)據(jù),以及 Deep Web上那些普通搜索引擎無(wú)法爬取到的數(shù)據(jù)。但是規(guī)模也不可能過(guò) 大。作為對(duì)基于配置文件的數(shù)據(jù)集成系統(tǒng)的有力補(bǔ)充,本發(fā)明采用普通 檢索系統(tǒng)作為另一個(gè)數(shù)據(jù)集成途徑。它可以對(duì)De印Web網(wǎng)站中的SurfaceWeb進(jìn)行自動(dòng)集成。同時(shí)也極大地增加我們的數(shù)據(jù)量。隨后對(duì)基于配置文 件的數(shù)據(jù)集成系統(tǒng)進(jìn)行更加詳細(xì)地說(shuō)明。在數(shù)據(jù)集成到本地之后,需要考慮數(shù)據(jù)處理模塊(Data Process), 該數(shù)據(jù)處理模塊包括數(shù)據(jù)存儲(chǔ)單元,用于存儲(chǔ)集成抽取出來(lái)的各個(gè)網(wǎng) 站的數(shù)據(jù);索引單元,用于對(duì)集成來(lái)的數(shù)據(jù)屬性進(jìn)行索引以方便未來(lái)查 詢時(shí)的各項(xiàng);險(xiǎn)索;以及全文索引單元,用于對(duì)集成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行 全文索引以處理大規(guī)模數(shù)據(jù)集成后的關(guān)鍵字檢索問(wèn)題。當(dāng)這些數(shù)據(jù)的存 儲(chǔ)方式、索引方式,以及當(dāng)數(shù)據(jù)量過(guò)大時(shí),該數(shù)據(jù)處理模塊可進(jìn)行有效 的全文索引以方便用戶將來(lái)查詢。在該框架圖的最頂層,就是基于該De印Web數(shù)據(jù)集成系統(tǒng)之上的應(yīng) 用,其包括因特網(wǎng)和WAP移動(dòng)網(wǎng)上的應(yīng)用。在因特網(wǎng)上,我們可以利用 集成出來(lái)的數(shù)據(jù)提供給用戶進(jìn)行垂直搜索,也可以整合多個(gè)數(shù)據(jù)源產(chǎn)生 出數(shù)據(jù)混合(Mashup)應(yīng)用。在WAP移動(dòng)網(wǎng)上,我們可以將集成到的數(shù) 據(jù)以簡(jiǎn)單的形式提供給用戶,以便將因特網(wǎng)上的數(shù)據(jù)共享到WAP上,也 可以將數(shù)據(jù)提供給手機(jī)用戶進(jìn)行移動(dòng)檢索。這四層構(gòu)成了整個(gè)Deep Web數(shù)據(jù)集成系統(tǒng)。圖2給出了該De印Web的數(shù)據(jù)集成系統(tǒng)的數(shù)據(jù)流圖。如圖2所示, 首先將Deep web中的大量數(shù)據(jù)先通過(guò)#4居本發(fā)明的集成方法(如圖8所 示)集成到本地服務(wù)器上,然后通過(guò)一個(gè)查詢接口,提供給用戶進(jìn)行檢 索,由于所有的檢索都是在本地完成,因此相對(duì)于接口集成來(lái)說(shuō),速度 將非??臁O旅鎸?duì)數(shù)據(jù)集成模塊中的基于配置文件的數(shù)據(jù)集成系統(tǒng)進(jìn)行詳細(xì)地 說(shuō)明。圖3給出了根據(jù)本發(fā)明的基于配置文件的集成系統(tǒng)的框架圖。該框 架圖就是圖1中的基于配置文件的集成系統(tǒng)的一個(gè)細(xì)化圖。如圖3所示,該基于配置文件的集成系統(tǒng)主要包括多個(gè)數(shù)據(jù)源, 例如De印Web數(shù)據(jù)、XML數(shù)據(jù)、以及其它提供接口查詢的網(wǎng)頁(yè);多個(gè)配 置文件單元,這多個(gè)配置文件單元的每一個(gè)與上述多個(gè)數(shù)據(jù)源的每一個(gè) 相對(duì)應(yīng);統(tǒng)一的集成單元,用于集成底層的各個(gè)數(shù)據(jù)源并且利用數(shù)據(jù)源 所對(duì)應(yīng)的配置文件,采用統(tǒng)一的方式,對(duì)數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行抽?。灰?及本地服務(wù)器,用于保存集成起來(lái)的所有數(shù)據(jù),這樣用戶檢索時(shí),便可以直接在本地服務(wù)器上進(jìn)行檢索,提高效率。隨后對(duì)上述統(tǒng)一的集成單 元進(jìn)行更詳細(xì)的描述。該基于配置文件的集成系統(tǒng)利用統(tǒng)一的集成單元并且利用針對(duì)每一個(gè)網(wǎng)站的配置文件來(lái)對(duì)De印Web數(shù)據(jù)、XML數(shù)據(jù)、以及其它提供接口查 詢的網(wǎng)頁(yè)進(jìn)4亍集成。在每一個(gè)De印Web背后,雖然都有一個(gè)Web數(shù)據(jù)庫(kù),但是對(duì)于用戶 來(lái)說(shuō),是無(wú)法直接訪問(wèn)這些數(shù)據(jù)庫(kù)的。用戶只能通過(guò)De印Web網(wǎng)站所提 供的"l妄口,如圖4所示。適過(guò)這些接口 ,用戶可以通過(guò)查詢自己感興趣的信息。.網(wǎng)站會(huì)以一 個(gè)統(tǒng)一的形式生成HTML頁(yè)面,將查詢結(jié)果呈現(xiàn)給用戶。由于在這個(gè)過(guò)程 中,網(wǎng)頁(yè)是動(dòng)態(tài)生成的,返回結(jié)果的數(shù)據(jù)也是在不斷變化的,同時(shí),在 這一個(gè)過(guò)程中,可能還需要傳遞一些參數(shù),因此,De印Web網(wǎng)頁(yè)常常無(wú) 法被通用搜索引擎爬取。但是隨著Deep Web網(wǎng)站的數(shù)量的急劇增加,如 何有效地利用這些數(shù)據(jù),將信息方便地提供給用戶查詢,顯得越來(lái)越重 要。查詢結(jié)果一般是以列表的形式返回給用戶,我們將其定義為列表頁(yè) 面(List頁(yè)面),如圖5所示。在這些查詢結(jié)果中,記錄會(huì)以規(guī)整的形式展現(xiàn),每一條記錄又是由 多個(gè)屬性項(xiàng)組成的。而這些屬性項(xiàng), 一般是用戶提交此次查詢所最為關(guān) 注的內(nèi)容,其中一些屬性項(xiàng),又能夠鏈"l妄到更深一層的頁(yè)面。這個(gè)頁(yè)面, 是有關(guān)這條記錄的包含更多詳細(xì)信息的頁(yè)面,我們將這個(gè)頁(yè)面定義為 Detail頁(yè)面。當(dāng)我們面對(duì)Deep Web進(jìn)行數(shù)據(jù)集成的時(shí)候,需要將List頁(yè)面與 Detail頁(yè)面的信息都集成進(jìn)來(lái)。并且,為了提供給用戶更好的檢索服務(wù), 我們需要將這些數(shù)據(jù)進(jìn)行結(jié)構(gòu)化處理。這點(diǎn),也正是面向領(lǐng)域的數(shù)據(jù)集 成與通用集成的重要區(qū)別。由于HTML中的數(shù)據(jù)是一種非結(jié)構(gòu)化的數(shù)據(jù), 不方便進(jìn)行進(jìn)一步處理。為了能夠精確地從List頁(yè)面和Detail頁(yè)面中 抽取出每條記錄的屬性項(xiàng),我們將其轉(zhuǎn)換為XML進(jìn)行處理。如圖6所示,將網(wǎng)站動(dòng)態(tài)生成的HTML頁(yè)面轉(zhuǎn)為XML頁(yè)面之后,我們 就可以使用XPath來(lái)進(jìn)行數(shù)據(jù)抽取。XPath是用于在XML文件上尋找信息 的一種語(yǔ)言,它可以通過(guò)XML文檔中的路徑索引,操縱XML文件上的元素和屬性。為此,我們需要針對(duì)網(wǎng)站的List頁(yè)面和Detail頁(yè)面分別寫 一個(gè)配置文件,通過(guò)這些配置文件獲得屬性項(xiàng)的XPath,然后在轉(zhuǎn)換生成 的XML文件中將屬性值抽取出來(lái)。只要使用特定規(guī)則,例如在職位搜索中按照行業(yè)類別查詢,就可訪 問(wèn)到整個(gè)De印Web數(shù)據(jù)庫(kù)了 。這種方法的有點(diǎn)在于1、 能夠快速搭建起一個(gè)面向領(lǐng)域的集成系統(tǒng);2、 非常容易商業(yè)化。目前,我們已經(jīng)通過(guò)此系統(tǒng)在工作信息領(lǐng)域集 成了超過(guò)150萬(wàn)條招聘信息,在政府新聞?lì)I(lǐng)域集成了近50萬(wàn)條數(shù)據(jù),并 通過(guò)兩個(gè)網(wǎng)站JobTong (工作通)和GovTong (政務(wù)通)提供給外界進(jìn)行 搜索;3、 抽取準(zhǔn)確度高,抽取粒度細(xì)。這也是其它自動(dòng)方法未能達(dá)到的目標(biāo)。4、 面向大規(guī)模數(shù)據(jù)。我們的方法并不是做一個(gè)簡(jiǎn)單的應(yīng)用程序,而 是面對(duì)實(shí)際的海量的De印Web上的數(shù)據(jù);5、 模擬用戶點(diǎn)擊行為。使得這種方法既不獲取冗余數(shù)據(jù),也不會(huì)少 獲取數(shù)據(jù)。下面對(duì)圖3中的配置文件單元進(jìn)行詳細(xì)說(shuō)明。在本發(fā)明中,需要針對(duì)每個(gè)被集成網(wǎng)站配置一組配置文件。通過(guò)這 組配置文件,程序能夠動(dòng)態(tài)獲得該網(wǎng)站的入口,并發(fā)送不同的參數(shù)請(qǐng)求, 取回不同的結(jié)果數(shù)據(jù)。這樣我們就實(shí)現(xiàn)了動(dòng)態(tài)訪問(wèn)該網(wǎng)站的數(shù)據(jù)庫(kù),并 取回我們想要的數(shù)據(jù)。因此,配置文件單元在整個(gè)數(shù)據(jù)集成系統(tǒng)中充當(dāng) 了封裝網(wǎng)站的作用。基于配置文件的數(shù)據(jù)集成系統(tǒng)需要的配置文件總共有三類Config. xml:被集成網(wǎng)站基本信息配置文件;Detail, xml:查詢結(jié)果詳細(xì)信息配置文件;List.xml:多個(gè)查詢?nèi)肟谂渲梦募?。其中,Detail.xml這類配置文件可能包含一至多個(gè),其它兩類有且 只能有一個(gè)配置文件。在這組配置文件中,只有Config.xml是必須的, 這個(gè)配置文件中指定了如何通過(guò)GET或POST方式獲取記錄集的列表,以 及如何獲取記錄等最重要的配置信息。Detail, xml可能是網(wǎng)站詳細(xì)頁(yè)面的配置文件,其內(nèi)容是內(nèi)容就是詳細(xì)頁(yè)面上各個(gè)屬性值的xpath,由于一 個(gè)網(wǎng)站可能有多個(gè)模板,因此有可能會(huì)有多個(gè)Deatil.xml,我們將其分 別命名為Deatill. xml, Deati 12. xml等等。List, xml其實(shí)是多個(gè)入口 , 相當(dāng)于有多個(gè)"關(guān)鍵字",其主要內(nèi)容包含兩塊, 一部分是這個(gè)"關(guān)鍵字" 的中文名稱,另一部分是用來(lái)替換Config. xml中的"$querykeyword$"。 接下來(lái)對(duì)統(tǒng)一的集成單元進(jìn)行的詳細(xì)說(shuō)明。本發(fā)明的系統(tǒng)試圖模擬用戶點(diǎn)擊行為,因此將所有De印Web上的數(shù) 據(jù)查詢請(qǐng)求抽象為三類第一類是查詢變量。這類變量體現(xiàn)了 De印Web上的動(dòng)態(tài)特性,當(dāng)查 詢發(fā)送不同的變量值時(shí),網(wǎng)站將返回不同的數(shù)據(jù)給我們。第二類是查詢常量。這些常量是相對(duì)于查詢變量而言,也就是說(shuō), 在整個(gè)查詢過(guò)程中,他們是可以不用改變的。當(dāng)然,查詢變量和查詢常 量之間沒(méi)有固定的界限,在一個(gè)查詢方案中的查詢常量可能是另一個(gè)查 詢方案中的查詢變量。第三類是翻頁(yè)過(guò)程。為了遍歷某一個(gè)查詢的所有數(shù)據(jù),要能夠自動(dòng) 翻頁(yè)。在此過(guò)程中,需要發(fā)送一些查詢變量,但是,由于翻頁(yè)的特殊性, 這一過(guò)程具有可歸納性。例如,翻頁(yè)所發(fā)送的查詢變量一般為頁(yè)碼值, 或者是頁(yè)碼值的一個(gè)線性變換。由于一個(gè)網(wǎng)站要在頁(yè)面上能夠?qū)崿F(xiàn)翻頁(yè),必然要有某種策略(例如 在GET或POST參數(shù)中添加頁(yè)碼信息)來(lái)實(shí)現(xiàn)瀏覽器中的翻頁(yè),因此我們 就以程序來(lái)模擬瀏覽器中的這種翻頁(yè)過(guò)程。該過(guò)程如下如果查詢接口的請(qǐng)求發(fā)送方式是GET方式,則使用GET方法發(fā)送查 詢參數(shù);如果是POST方式,則使用POST方式發(fā)送查詢參數(shù)。然后統(tǒng)一 集成模塊就會(huì)取回采樣頁(yè),并根據(jù)配置文件提取出總頁(yè)數(shù)TotalPages。 此后,統(tǒng)一集成模塊會(huì)依據(jù)此網(wǎng)站的翻頁(yè)策略,在GET參數(shù)或者POST參 數(shù)中動(dòng)態(tài)修改頁(yè)碼信息,重新發(fā)送請(qǐng)求參數(shù),來(lái)獲取指定頁(yè)的查詢結(jié)果 頁(yè)面。這個(gè)過(guò)程從第一頁(yè)開(kāi)始,到最后一頁(yè)(即TotalPages)結(jié)束,因 而稱為翻頁(yè)過(guò)程。有了這三類抽象,我們就能夠使用統(tǒng)一的方式動(dòng)態(tài)獲取網(wǎng)站入口, 如圖7所示,首先從config.xml中讀取出這個(gè)網(wǎng)站的URL模式 (URLPattern),接著替換其中的查詢變量,保留查詢常量,利用上述翻頁(yè)過(guò)程設(shè)置頁(yè)碼,再才艮據(jù)不用的請(qǐng)求發(fā)送方式,如GET方式或者POST方 式,發(fā)送查詢請(qǐng)求和參數(shù),然后取回查詢結(jié)果。實(shí)現(xiàn)動(dòng)態(tài)訪問(wèn)網(wǎng)站之后,就能夠利用配置文件去網(wǎng)站提交一個(gè)查詢, 接著取回查詢結(jié)果的頁(yè)數(shù)。然后利用翻頁(yè)過(guò)程,將此查詢的所有查詢結(jié) 果一頁(yè)一頁(yè)取回,再根據(jù)配置文件中的xpath,將要抽取的數(shù)據(jù)獲得,并 存入本地?cái)?shù)據(jù)庫(kù)中。圖8給出了統(tǒng)一集成單元的工作流程圖。如圖8所示,首先從 list, xml中讀取一個(gè)查詢關(guān)鍵字,然后根據(jù)config. xml中的配置發(fā)送查 詢請(qǐng)求。查詢請(qǐng)求的方式可能有兩種,分別是GET方式和POST方式,如 果是GET方式,則會(huì)從config. xml中獲取需要發(fā)送的查詢字符串;如果 是POST方式,則會(huì)從配置文件中獲取需要POST過(guò)去的參數(shù)。這樣就能 夠獲得一個(gè)采樣頁(yè)。再獲取這個(gè)采樣頁(yè)之后,根據(jù)config. xml中的頁(yè)數(shù) 配置信息抽取出這次查詢的返回結(jié)果的總頁(yè)數(shù),然后依照GET或者POST 方式去獲取第一頁(yè),這樣就可以獲得一組返回結(jié)果記錄。根據(jù)配置文件 中的信息,將所有記錄抽出,并提出記錄的各項(xiàng)屬性值,如果這條記錄 還有詳細(xì)頁(yè)面,則可以#4居詳細(xì)頁(yè)面的配置文件,將記錄詳細(xì)頁(yè)面中的 一些屬性值也抽取出來(lái)。此時(shí),如果抽取的頁(yè)數(shù)小于總頁(yè)數(shù),則會(huì)繼續(xù) 抽取下一頁(yè),否則這個(gè)以這個(gè)關(guān)4建字的查詢抽取就已經(jīng)完成,/人list, xml 中取出下 一個(gè)關(guān)鍵字進(jìn)行查詢。圖9給出了能夠?qū)崿F(xiàn)圖8所示流程的統(tǒng)一集成單元的方框圖。如圖9 所示,讀取模塊從list, xml中讀取一個(gè)查詢關(guān)鍵字。發(fā)送模塊根據(jù) config. xml中的配置發(fā)送查詢請(qǐng)求。查詢請(qǐng)求的方式可能有兩種,分別 是GET方式和POST方式,如果是GET方式,則會(huì)從config. xml中獲取 需要發(fā)送的查詢字符串;如果是P0ST方式,則會(huì)從配置文件中獲取需要 P0ST過(guò)去的參數(shù)。獲取總頁(yè)數(shù)模塊這樣就能夠獲得一個(gè)采樣頁(yè),再獲取 這個(gè)采樣頁(yè)之后,根據(jù)config. xml中的頁(yè)數(shù)配置信息抽取出這次查詢的 返回結(jié)果的總頁(yè)數(shù),然后獲取第一頁(yè)模塊依照GET或者POST方式去獲取 第一頁(yè),這樣就可以獲得一組返回結(jié)果記錄。獲取記錄模塊根據(jù)配置文 件中的信息,從config. xml中讀取記錄xpath,將所有記錄抽出。獲耳又 記錄屬性值模塊從config. xml中讀取屬性xpath以提出記錄的各項(xiàng)屬性 值。如果這條記錄還有詳細(xì)頁(yè)面,獲取頁(yè)面模塊則根據(jù)config. xml中的配置獲取url,即獲取這條記錄的詳細(xì)頁(yè)面。獲取頁(yè)面屬性值模塊從 detail, xml中讀取屬性xpath,即才艮據(jù)詳細(xì)頁(yè)面的配置文件,將記錄詳 細(xì)頁(yè)面中的一些屬性值也抽取出來(lái)。此時(shí),如果抽取的頁(yè)數(shù)小于總頁(yè)數(shù), 則會(huì)繼續(xù)抽取下一頁(yè),否則這個(gè)以這個(gè)關(guān)鍵字的查詢抽取就已經(jīng)完成, 獲取結(jié)果模塊則成功獲取此次查詢結(jié)果,從list, xml中取出下一個(gè)關(guān)鍵 字進(jìn)行查詢。從以上描述可知,借助于本發(fā)明,可以快速地構(gòu)造出針對(duì)某一個(gè)具 體領(lǐng)域的集成范例。對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)可顯而易見(jiàn)的得出其他優(yōu)點(diǎn)和修改。 因此,具有更廣方面的本發(fā)明并不局限于這里所示出的并且所描述的具 體說(shuō)明及示例性實(shí)施例。因此,在不脫離由隨后權(quán)利要求及其等價(jià)體所 定義的一般發(fā)明構(gòu)思的精神和范圍的情況下,可對(duì)其做出各種修改。
權(quán)利要求
1. 一種面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng),包括數(shù)據(jù)源;數(shù)據(jù)集成模塊,用于將來(lái)自數(shù)據(jù)源的數(shù)據(jù)集成到本地;數(shù)據(jù)處理模塊,用于對(duì)集成到本地的數(shù)據(jù)進(jìn)行處理;以及應(yīng)用模塊,用于將集成出來(lái)的數(shù)據(jù)提供給用戶。
2、 根據(jù)權(quán)利要求1的面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng),其中數(shù)據(jù)集成模 塊包括基于配置文件的Web數(shù)據(jù)集成系統(tǒng),用于比較精確地對(duì)De印Web上 的數(shù)據(jù)進(jìn)行抽取與集成;以及普通檢索系統(tǒng),用于搭建大規(guī)模的、快速的、全自動(dòng)的但準(zhǔn)確率稍 低的集成系統(tǒng)。
3、 根據(jù)權(quán)利要求1的面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng),其中數(shù)據(jù)處理模 塊包括數(shù)據(jù)存儲(chǔ)單元,用于存儲(chǔ)集成抽取出來(lái)的各個(gè)網(wǎng)站的數(shù)據(jù); 索引單元,用于對(duì)集成來(lái)的數(shù)據(jù)屬性進(jìn)行索引以方便未來(lái)查詢時(shí)的 各項(xiàng)4企索;以及全文索引單元,用于對(duì)集成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行全文索引以處理大 規(guī)模數(shù)據(jù)集成后的關(guān)鍵字檢索問(wèn)題。
4、 根據(jù)權(quán)利要求2的面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng),其中基于配置文 件的數(shù)據(jù)集成系統(tǒng)包括多個(gè)數(shù)據(jù)源;多個(gè)配置文件單元,這多個(gè)配置文件單元的每一個(gè)與上述多個(gè)數(shù)據(jù) 源的每一個(gè)相對(duì)應(yīng);統(tǒng)一的集成單元,用于集成底層的各個(gè)數(shù)據(jù)源并且利用數(shù)據(jù)源所對(duì) 應(yīng)的配置文件,采用統(tǒng)一的方式,對(duì)數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行抽?。灰?及本地服務(wù)器,用于保存集成起來(lái)的所有數(shù)據(jù),以^^用戶可以直接在 本地服務(wù)器上對(duì)數(shù)據(jù)進(jìn)行處理。
5、 根據(jù)權(quán)利要求4的面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng),其中統(tǒng)一的集成單元包括讀取才莫塊,用于乂人list, xml中讀取一個(gè)查詢關(guān)4t字; 發(fā)送模塊,用于根據(jù)config. xml中的配置發(fā)送查詢請(qǐng)求; 獲取總頁(yè)數(shù)模塊,用于根據(jù)config. xml中的頁(yè)數(shù)配置信息抽取出這 次查詢的返回結(jié)果的總頁(yè)數(shù);獲取第一頁(yè)模塊,用于依照GET或者POST方式去獲取第一頁(yè); 獲取記錄模塊,用于根據(jù)配置文件中的信息,從config. xml中讀取 記錄xpath,將所有記錄抽出;獲取記錄屬性值模塊,用于從conf ig. xml中讀取屬性xpath以提出 記錄的各項(xiàng)屬性值;獲取頁(yè)面模塊,用于在如果這條記錄還有詳細(xì)頁(yè)面的情況下根據(jù) config. xml中的配置獲取url,即獲取這條記錄的詳細(xì)頁(yè)面; 獲取頁(yè)面屬性值模塊,用于從detail, xml中讀取屬性xpath,即根 據(jù)詳細(xì)頁(yè)面的配置文件,將記錄詳細(xì)頁(yè)面中的一些屬性值也抽取出 來(lái);以及獲取結(jié)果模塊,用于成功獲取此次查詢結(jié)果。
6、 根據(jù)權(quán)利要求5的面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng),其中數(shù)據(jù)處理模 塊包括數(shù)據(jù)存儲(chǔ)單元,用于存儲(chǔ)集成抽取出來(lái)的各個(gè)網(wǎng)站的數(shù)據(jù); 索引單元,用于對(duì)集成來(lái)的數(shù)據(jù)屬性進(jìn)行索引以方便未來(lái)查詢時(shí)的 各項(xiàng)4企索;以及全文索引單元,用于對(duì)集成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行全文索引以處理大 規(guī)模數(shù)據(jù)集成后的關(guān)鍵字檢索問(wèn)題。
7、 一種用在面向領(lǐng)域的數(shù)據(jù)集成系統(tǒng)中的面向領(lǐng)域的Web數(shù)據(jù)集成方法,所述面向領(lǐng)域的數(shù)據(jù)集成系統(tǒng)包括數(shù)據(jù)源、具有基于配置文件的數(shù) 據(jù)集成系統(tǒng)的數(shù)據(jù)集成模塊、數(shù)據(jù)處理模塊,以及應(yīng)用模塊,其中 基于配置文件的數(shù)據(jù)集成系統(tǒng)包括多個(gè)數(shù)據(jù)源、與上述多個(gè)數(shù)據(jù)源 的每一個(gè)相對(duì)應(yīng)多個(gè)配置文件單元、統(tǒng)一的集成單元、以及本地服 務(wù)器,該面向領(lǐng)域的數(shù)據(jù)集成方法包括 數(shù)據(jù)集成步驟,數(shù)據(jù)集成模塊將來(lái)自數(shù)據(jù)源的數(shù)據(jù)集成到本地; 數(shù)據(jù)處理步驟,數(shù)據(jù)處理模塊對(duì)集成到本地的數(shù)據(jù)進(jìn)行處理;以及應(yīng)用步驟,用于將集成出來(lái)的數(shù)據(jù)提供給用戶。
8、 根據(jù)權(quán)利要求7的面向領(lǐng)域的Web數(shù)據(jù)集成方法,其中數(shù)據(jù)集成步驟包括基于配置文件的數(shù)據(jù)集成步驟,用于比較精確地對(duì)De印Web上的數(shù) 據(jù)進(jìn)行抽取與集成;以及普通檢索步驟,用于搭建大規(guī)模的、快速的、全自動(dòng)的但準(zhǔn)確率稍 低的集成系統(tǒng)。
9、 根據(jù)權(quán)利要求7的面向領(lǐng)域的Web數(shù)據(jù)集成方法,其中數(shù)據(jù)處理步驟包括存儲(chǔ)集成抽取出來(lái)的各個(gè)網(wǎng)站的數(shù)據(jù);對(duì)集成來(lái)的數(shù)據(jù)屬性進(jìn)行索引以方便未來(lái)查詢時(shí)的各項(xiàng)檢索;以及 對(duì)集成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行全文索引以處理大規(guī)模數(shù)據(jù)集成后的關(guān) 鍵字檢索問(wèn)題。
10、 根據(jù)權(quán)利要求9的面向領(lǐng)域的Web數(shù)據(jù)集成方法,其中數(shù)據(jù)處理步 驟包括存儲(chǔ)集成抽取出來(lái)的各個(gè)網(wǎng)站的數(shù)據(jù);對(duì)集成來(lái)的數(shù)據(jù)屬性進(jìn)行索引以方便未來(lái)查詢時(shí)的各項(xiàng)檢索;以及對(duì)集成過(guò)來(lái)的全部數(shù)據(jù)進(jìn)行全文索引以處理大規(guī)模數(shù)據(jù)集成后的關(guān)鍵字檢索問(wèn)題。
全文摘要
一種面向領(lǐng)域的Web數(shù)據(jù)集成系統(tǒng)和方法,其中該系統(tǒng)包括數(shù)據(jù)源;數(shù)據(jù)集成模塊,用于將來(lái)自數(shù)據(jù)源的數(shù)據(jù)集成到本地;數(shù)據(jù)處理模塊,用于對(duì)集成到本地的數(shù)據(jù)進(jìn)行處理;以及應(yīng)用模塊,用于將集成出來(lái)的數(shù)據(jù)提供給用戶。該面向領(lǐng)域的數(shù)據(jù)集成系統(tǒng)和方法可實(shí)現(xiàn)對(duì)數(shù)據(jù)源所有信息的集成以及對(duì)每條記錄各個(gè)屬性段的精確抽取,并實(shí)現(xiàn)數(shù)據(jù)的動(dòng)態(tài)更新的查詢結(jié)果集成。
文檔編號(hào)G06F17/30GK101251852SQ20081005610
公開(kāi)日2008年8月27日 申請(qǐng)日期2008年1月11日 優(yōu)先權(quán)日2008年1月11日
發(fā)明者孟小峰, 燦 林, 王仲遠(yuǎn) 申請(qǐng)人:孟小峰
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
延津县| 玉环县| 军事| 云浮市| 奎屯市| 兴安县| 永年县| 巨鹿县| 深州市| 民和| 辉南县| 调兵山市| 上虞市| 岫岩| 韶山市| 虹口区| 铁岭市| 铜陵市| 乐都县| 鄢陵县| 遂川县| 昭苏县| 林口县| 库伦旗| 巨野县| 玉林市| 龙州县| 含山县| 承德县| 永安市| 高碑店市| 昌江| 天长市| 水城县| 商河县| 中江县| 泌阳县| 高要市| 信阳市| 北京市| 满洲里市|