本發(fā)明涉及計算機網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種模板配置方法及系統(tǒng)。
背景技術(shù):
數(shù)據(jù)抽取是數(shù)據(jù)采集中的一個重要環(huán)節(jié),所有采集到的原始網(wǎng)頁需要經(jīng)過數(shù)據(jù)抽取才能獲得有效的數(shù)據(jù),如標題、正文等?;谀0宓臄?shù)據(jù)抽取是根據(jù)特定的網(wǎng)頁模板抽取網(wǎng)頁內(nèi)容的技術(shù)。
模板由抽取表達式并通過xml或者json等組織而成。常用的抽取表達式有正則表達式與xpath。其中,正則表達式使用單個字符串來描述、匹配一系列符合某個句法規(guī)則的字符串。在很多文本編輯器里,正則表達式通常被用來檢索、替換那些符合某個模式的文本。xpath,是xml路徑語言,它是一種用來確定xml文檔中某部分的位置的語言。程序通過讀取模板,依照模板中的表達式或路徑語言即可提取出網(wǎng)頁中的所需內(nèi)容。
現(xiàn)有技術(shù)中都是采用手工配置模板。但是,由于手工配置模板是一個復(fù)雜而又繁瑣的工作,不同的網(wǎng)頁其結(jié)構(gòu)千差萬別,因而需要配置各種不同的模板。因此,在采集網(wǎng)頁的種類比較多的時候,手工配置往往成為整個工程的瓶頸所在,費時費力,而且手工配置的模板不可避免會出現(xiàn)紕漏,又沒有工具去預(yù)覽模板抽取結(jié)果,導(dǎo)致模板在配置過程中需要進行重復(fù)修正。
技術(shù)實現(xiàn)要素:
鑒于上述問題,本發(fā)明提出了一種模板配置方法及系統(tǒng),解決了現(xiàn)有技術(shù)中手工配置模板過程費時費力,而且需要進行重復(fù)修正的問題,實現(xiàn)了模板的自動配置。
根據(jù)本發(fā)明的第一方面,提供了一種模板配置方法,該方法包括:
獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁;
當接收到用戶對所述網(wǎng)頁觸發(fā)的選取操作時,提取所述選取操作對應(yīng)的網(wǎng)頁內(nèi)容;
查找所述網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,根據(jù)查找到的位置生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式;
將所述抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)網(wǎng)頁的模板配置。
其中,所述查找所述網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,根據(jù)查找到的位置生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式,進一步包括:
獲取所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu);
逐層遍歷所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu),查找所述網(wǎng)頁節(jié)點在所述樹狀結(jié)構(gòu)中的位置;
根據(jù)查找到的位置,計算所述網(wǎng)頁節(jié)點的xpath路徑和/或相對路徑;
根據(jù)所述xpath路徑和/或相對路徑生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式。
其中,所述根據(jù)查找到的位置,計算所述網(wǎng)頁節(jié)點的相對路徑,進一步包括:
獲取所述網(wǎng)頁節(jié)點的父節(jié)點的xpath路徑;
根據(jù)所述網(wǎng)頁節(jié)點的xpath路徑和所述網(wǎng)頁節(jié)點的父節(jié)點的xpath路徑計算該網(wǎng)頁節(jié)點的相對路徑。
其中,在所述獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁之后,所述方法還包括:
在所述預(yù)設(shè)模板樹中選取需要進行配置節(jié)點,將其作為當前配置節(jié)點;
其中,所述預(yù)設(shè)模板樹包括root節(jié)點、列表節(jié)點、元素節(jié)點、屬性節(jié)點和文本節(jié)點;
每一節(jié)點采用key-value格式;
每一節(jié)點的value包括type、xpath、pattr和child屬性。
其中,所述方法進一步包括:
采用得到的模板對所述網(wǎng)頁進行數(shù)據(jù)提取,并將數(shù)據(jù)提取結(jié)果進行展示。
根據(jù)本發(fā)明的第二方面,提供了一種模板配置系統(tǒng),該系統(tǒng)包括:
加載單元,用于獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁;
確定單元,用于當接收到用戶對所述加載單元記載的網(wǎng)頁觸發(fā)的選取操作時,確定所述選取操作對應(yīng)的網(wǎng)頁內(nèi)容;
生成單元,用于查找所述確定單元確定出的網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,根據(jù)查找到的位置生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式;
傳輸單元,用于將所述生成單元生成的抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)網(wǎng)頁的模板配置。
其中,所述生成單元,進一步包括:
獲取模塊,用于獲取所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu);
查找模塊,用于逐層遍歷所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu),查找所述網(wǎng)頁節(jié)點在所述樹狀結(jié)構(gòu)中的位置;
計算模塊,用于根據(jù)查找到的位置,計算所述網(wǎng)頁節(jié)點的xpath路徑和/或相對路徑;
生成模塊,用于根據(jù)所述xpath路徑和/或相對路徑生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式。
其中,所述計算模塊,具體用于獲取所述網(wǎng)頁節(jié)點的父節(jié)點的xpath路徑,根據(jù)所述網(wǎng)頁節(jié)點的xpath路徑和所述網(wǎng)頁節(jié)點的父節(jié) 點的xpath路徑計算該網(wǎng)頁節(jié)點的相對路徑。
其中,所述系統(tǒng)還包括:
選取單元,用于在所述獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁之后,在所述預(yù)設(shè)模板樹中選取需要進行配置節(jié)點,將其作為當前配置節(jié)點;
其中,所述預(yù)設(shè)模板樹包括root節(jié)點、列表節(jié)點、元素節(jié)點、屬性節(jié)點和文本節(jié)點;
每一節(jié)點采用key-value格式;
每一節(jié)點的value包括type、xpath、pattr和child屬性。
其中,所述系統(tǒng)還包括:
展示單元,用于采用得到的模板對所述網(wǎng)頁進行數(shù)據(jù)提取,并將數(shù)據(jù)提取結(jié)果進行展示。
本發(fā)明的有益效果為:
本發(fā)明提供的模板配置方法及系統(tǒng),通過url地址加載對應(yīng)的網(wǎng)頁,根據(jù)選取的網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在加載的網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,生成網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式,并將得到的抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)網(wǎng)頁的模板配置。本發(fā)明解決了現(xiàn)有技術(shù)中手工配置模板過程費時費力,而且需要進行重復(fù)修正的問題,實現(xiàn)了模板的自動配置,為數(shù)據(jù)抽取、采集提供了有力的技術(shù)支持。
附圖說明
通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1為本發(fā)明一個實施例提出的模板配置方法的流程圖;
圖2為本發(fā)明實施例提出的模板配置方法中步驟s13的細分流程 圖;
圖3為本發(fā)明一個實施例提出的模板配置系統(tǒng)的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例提出的模板配置系統(tǒng)中生成單元的具體結(jié)構(gòu)示意圖。
具體實施方式
下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。
需要說明的是,本發(fā)明提供的模板配置方法及系統(tǒng),采用b/s(browser/server,瀏覽器/服務(wù)器)架構(gòu),服務(wù)端采用django實現(xiàn),web界面端采用html以及jquery實現(xiàn),模板等數(shù)據(jù)的存儲使用mysql數(shù)據(jù)庫。
圖1示出了本發(fā)明實施例的模板配置方法的流程圖。
參照圖1,本發(fā)明實施例提出的模板配置方法,具體包括以下步驟:
s11、獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁。
統(tǒng)一資源定位器(uniformresourelocator,url)是對可以從互聯(lián)網(wǎng)上所獲取到資源的位置和訪問方法的一種簡潔的表示,是互聯(lián)網(wǎng)上標準資源的地址?;ヂ?lián)網(wǎng)上的每個文件都有唯一的url,它包含的信息能夠指出文件的位置以及瀏覽器對該文件的處理方法。
在實際應(yīng)用中,可通過用戶輸入的方式實現(xiàn)特定url地址的獲取。系統(tǒng)提供統(tǒng)一的web界面,該界面展示有輸入框,通過該輸入框接收用戶輸入的特定url,并對其進行自動加載,得到對應(yīng)的網(wǎng)頁。
可理解的,通過用戶輸入的方式實現(xiàn)特定url地址的獲取方式 僅是舉例說明,特定url地址的獲取包括多種實現(xiàn)方式,如通過網(wǎng)絡(luò)抓取的方式獲取某一網(wǎng)頁的url及該網(wǎng)頁所包括的url等,本領(lǐng)域技術(shù)人員需要根據(jù)實際應(yīng)用進行設(shè)置,對此本發(fā)明實施例不作具體限定。
其中,url地址對應(yīng)網(wǎng)頁的加載,具體為,首先通過服務(wù)器端進行下載,并將javascript腳本去除,并返回給配置界面通過iframe加載出來。
s12、當接收到用戶對所述網(wǎng)頁觸發(fā)的選取操作時,提取所述選取操作對應(yīng)的網(wǎng)頁內(nèi)容。
在實際應(yīng)用中,用戶觸發(fā)的選取操作可通過鼠標選取、鍵盤選取或手勢選取的方式實現(xiàn)。本領(lǐng)域技術(shù)人員需要根據(jù)實際應(yīng)用進行設(shè)置,對此本發(fā)明實施例不作具體限定。
s13、查找所述網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,根據(jù)查找到的位置生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式。
可理解的是,任何html頁面均可以解析成為dom樹狀結(jié)構(gòu),xpath即為dom樹中從根節(jié)點到選中節(jié)點的路徑。
s14、將所述抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)網(wǎng)頁的模板配置。
其中,預(yù)設(shè)模板樹為預(yù)先配置的。具體的,通過將預(yù)設(shè)模板結(jié)構(gòu)定義為json結(jié)構(gòu),自然即具有了樹的性質(zhì),然后將預(yù)設(shè)模板通過jquery中的jstree技術(shù)在html網(wǎng)頁畫出樹,即得到預(yù)設(shè)模板樹??梢酝ㄟ^鼠標對這顆樹進行節(jié)點的添加、刪除等編輯操作。
本發(fā)明實施例提供的模板配置方法,通過url地址加載對應(yīng)的網(wǎng)頁,根據(jù)選取的網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在加載的網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,生成網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式,并將得到的抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)了模板的 自動配置,為數(shù)據(jù)抽取、采集提供了有力的技術(shù)支持。
在本發(fā)明的另一實施例中,步驟s13,如圖2所示,進一步包括以下步驟:
s131獲取所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)。
s132逐層遍歷所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu),查找所述網(wǎng)頁節(jié)點在所述樹狀結(jié)構(gòu)中的位置。
s133根據(jù)查找到的位置,計算所述網(wǎng)頁節(jié)點的xpath路徑和/或相對路徑。
進一步地,步驟s133中的根據(jù)查找到的位置,計算所述網(wǎng)頁節(jié)點的相對路徑,進一步包括以下圖中未示出的步驟:a1、獲取所述網(wǎng)頁節(jié)點的父節(jié)點的xpath路徑;a2、根據(jù)所述網(wǎng)頁節(jié)點的xpath路徑和所述網(wǎng)頁節(jié)點的父節(jié)點的xpath路徑計算該網(wǎng)頁節(jié)點的相對路徑。
s134根據(jù)所述xpath路徑和/或相對路徑生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式。
需要說明的是,本實施例中,使用xpath作為主抽取表達式,采用正則表達式作為輔助抽取表達式,輔助抽取表達式只對屬性節(jié)點或者文本節(jié)點有效。抽取時首先使用主抽取表達式抽取,如果輔助表達式不空且滿足節(jié)點類型要求則繼續(xù)使用輔助抽取表達式繼續(xù)抽取。
本實施例中,xpath抽取表達式的計算,具體如下:
獲取所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu),從網(wǎng)頁節(jié)點沿著樹狀結(jié)構(gòu)向上回溯,即可以獲得該網(wǎng)頁節(jié)點的xpath路徑。根據(jù)模板的定義非root節(jié)點直接子孩子節(jié)點還需要根據(jù)模板中對應(yīng)的父節(jié)點xpath屬性計算其相對路徑。
具體的,非root直接子孩子節(jié)點c的相對路徑計算方法如下:
1)求節(jié)點c父節(jié)點的絕對路徑。假設(shè)父節(jié)點a為root節(jié)點的直接子孩子,那么xpath即為其絕對路徑,否則從父節(jié)點開始 向上回溯直到root節(jié)點的直接子孩子節(jié)點,從該節(jié)點開始將路徑上所有節(jié)點的xpath拼接起來即求得了父節(jié)點a的絕對路徑。
2)求節(jié)點c相對路徑,根據(jù)求得的節(jié)點c的絕對路徑與節(jié)點a的絕對路徑,取其公共部分,從公共部分以后部分即為相對路徑。
進一步地,在所述獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁之后,所述方法還包括:在所述預(yù)設(shè)模板樹中選取需要進行配置節(jié)點,將其作為當前配置節(jié)點;
本實施例中,在獲取到被配置網(wǎng)頁的url地址,完成該網(wǎng)頁的加載與顯示之后,通過鼠標在預(yù)設(shè)模板樹中選取一個需要進行配置節(jié)點,將其作為當前配置節(jié)點,然后在加載網(wǎng)頁中選取需要抽取的網(wǎng)頁節(jié)點,自動計算該網(wǎng)頁節(jié)點的xpath路徑與相對路徑,并自動將該值傳遞給預(yù)設(shè)模板樹中被選中當前配置節(jié)點的xpath屬性,實現(xiàn)節(jié)點的自動配置。
其中,所述預(yù)設(shè)模板樹包括root節(jié)點、列表節(jié)點、元素節(jié)點、屬性節(jié)點和文本節(jié)點;
每一節(jié)點采用key-value格式;
每一節(jié)點的value包括type、xpath、pattr和child屬性。
本實施例中,預(yù)設(shè)模板樹采用json格式組織。預(yù)設(shè)模板樹中包括多個節(jié)點,每個采用key-value對的形式實現(xiàn)。key-value對為一組<key,抽取表達式>。節(jié)點分為五種類型,分別為root節(jié)點、列表節(jié)點、元素節(jié)點、屬性節(jié)點、文本節(jié)點。每個節(jié)點的value由type、xpath、pattr、child組成,結(jié)構(gòu)如下:
其中,type為整數(shù)類型,標識該節(jié)點類型;xpath為字符串,為抽取表達式,這里采用xpath;pattr為字典,標識多種輔助抽取表達式;child為列表,標識該節(jié)點的孩子節(jié)點。
在模板中,root節(jié)點為json結(jié)構(gòu)的根節(jié)點,有且只有一個。root節(jié)點的xpath、pattr均為空。列表節(jié)點child屬性可以包含的孩子節(jié)點類型為列表節(jié)點、元素節(jié)點、屬性節(jié)點、文本節(jié)點;元素節(jié)點child屬性可以包含的孩子節(jié)點類型為列表節(jié)點、元素節(jié)點、屬性節(jié)點、文本節(jié)點;屬性節(jié)點以及文本節(jié)點child屬性為空,即不可包含孩子節(jié)點。
root節(jié)點的直接子孩子節(jié)點的xpath路徑為絕對路徑,非root節(jié)點的直接孩子節(jié)點的子節(jié)點的xpath路徑為相對路徑。
進一步地,本實施例提供的模板配置方法,進一步包括以下步驟:
采用得到的模板對所述網(wǎng)頁進行數(shù)據(jù)提取,并將數(shù)據(jù)提取結(jié)果進行展示。
本實施例還提供了模板抽取結(jié)果預(yù)覽功能。自動獲取配置好的模板與配置該模板時提供的url,并采用得到的模板對對應(yīng)的網(wǎng)頁進行數(shù)據(jù)抽取,并將結(jié)果反饋給前端頁面進行展示。
此外,本發(fā)明實施例提供方的模板配置方法還提供對已配置模板的存儲與修改功能,對外提供應(yīng)用程序編程接口api供采集程序使用模板。
對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明實施例并不受所描述的 動作順序的限制,因為依據(jù)本發(fā)明實施例,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明實施例所必須的。
圖3示出了本發(fā)明實施例的模板配置系統(tǒng)的結(jié)構(gòu)示意圖。
參照圖3,本發(fā)明實施例的模板配置系統(tǒng),具體包括加載單元301、確定單元302、生成單元303以及傳輸單元304,其中:
所述加載單元301,用于獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁;
所述確定單元302,用于當接收到用戶對所述加載單元記載的網(wǎng)頁觸發(fā)的選取操作時,確定所述選取操作對應(yīng)的網(wǎng)頁內(nèi)容;
所述生成單元303,用于查找所述確定單元確定出的網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,根據(jù)查找到的位置生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式;
所述傳輸單元304,用于將所述生成單元生成的抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)網(wǎng)頁的模板配置。
在本發(fā)明的另一實施例中,如圖4所示,所述生成單元303,進一步包括獲取模塊3031、查找模塊3032、計算模塊3033以及生成模塊3034:
所述獲取模塊3031,用于獲取所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu);
所述查找模塊3032,用于逐層遍歷所述網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu),查找所述網(wǎng)頁節(jié)點在所述樹狀結(jié)構(gòu)中的位置;
所述計算模塊3033,用于根據(jù)查找到的位置,計算所述網(wǎng)頁節(jié)點的xpath路徑和/或相對路徑;
所述生成模塊3034,用于根據(jù)所述xpath路徑和/或相對路徑生成所述網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式。
在本發(fā)明實施例中,所述計算模塊,具體用于獲取所述網(wǎng)頁節(jié)點 的父節(jié)點的xpath路徑,根據(jù)所述網(wǎng)頁節(jié)點的xpath路徑和所述網(wǎng)頁節(jié)點的父節(jié)點的xpath路徑計算該網(wǎng)頁節(jié)點的相對路徑。
進一步地,所述模板配置系統(tǒng)還包括附圖中未示出的選取單元:所述選取單元,用于在所述獲取網(wǎng)頁的url地址,根據(jù)所述url地址加載對應(yīng)的網(wǎng)頁之后,在所述預(yù)設(shè)模板樹中選取需要進行配置節(jié)點,將其作為當前配置節(jié)點;
其中,所述預(yù)設(shè)模板樹包括root節(jié)點、列表節(jié)點、元素節(jié)點、屬性節(jié)點和文本節(jié)點;每一節(jié)點采用key-value格式;每一節(jié)點的value包括type、xpath、pattr和child屬性。
本實施例中,預(yù)設(shè)模板樹采用json格式組織。預(yù)設(shè)模板樹中包括多個節(jié)點,每個采用key-value對的形式實現(xiàn)。key-value對為一組<key,抽取表達式>。節(jié)點分為五種類型,分別為root節(jié)點、列表節(jié)點、元素節(jié)點、屬性節(jié)點、文本節(jié)點。每個節(jié)點的value由type、xpath、pattr、child組成,其中,type為整數(shù)類型,標識該節(jié)點類型;xpath為字符串,為抽取表達式,這里采用xpath;pattr為字典,標識多種輔助抽取表達式;child為列表,標識該節(jié)點的孩子節(jié)點。
進一步地,所述模板配置系統(tǒng)還包括附圖中未示出的展示單元:所述展示單元,用于采用得到的模板對所述網(wǎng)頁進行數(shù)據(jù)提取,并將數(shù)據(jù)提取結(jié)果進行展示。
對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
綜上所述,本發(fā)明實施例提供的模板配置方法及系統(tǒng),通過url地址加載對應(yīng)的網(wǎng)頁,根據(jù)選取的網(wǎng)頁內(nèi)容對應(yīng)的網(wǎng)頁節(jié)點在加載的網(wǎng)頁對應(yīng)的樹狀結(jié)構(gòu)中的位置,生成網(wǎng)頁內(nèi)容對應(yīng)的抽取表達式,并將得到的抽取表達式傳遞給預(yù)設(shè)模板樹中當前配置節(jié)點的xpath屬性,實現(xiàn)網(wǎng)頁的模板配置。本發(fā)明解決了現(xiàn)有技術(shù)中手工配置模板過 程費時費力,而且需要進行重復(fù)修正的問題,實現(xiàn)了模板的自動配置,為數(shù)據(jù)抽取、采集提供了有力的技術(shù)支持。
通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可以通過硬件實現(xiàn),也可以借助軟件加必要的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲在一個非易失性存儲介質(zhì)(可以是cd-rom,u盤,移動硬盤等)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
本領(lǐng)域技術(shù)人員可以理解附圖只是一個優(yōu)選實施例的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。
本領(lǐng)域技術(shù)人員可以理解實施例中的裝置中的模塊可以按照實施例描述進行分布于實施例的裝置中,也可以進行相應(yīng)變化位于不同于本實施例的一個或多個裝置中。上述實施例的單元可以合并為一個單元,也可以進一步拆分成多個子模塊。
以上所述僅是本發(fā)明的部分實施方式,應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。