一種標(biāo)記文件解析方法和裝置制造方法
【專利摘要】本申請?zhí)峁┝艘环N標(biāo)記文件解析方法和裝置,用以解決現(xiàn)有技術(shù)中對標(biāo)記文件解析成功率低的問題。本申請通過獲取標(biāo)記文件中的標(biāo)簽對象生成標(biāo)簽集合;根據(jù)所述標(biāo)簽集合中標(biāo)簽對象的公共屬性對所述標(biāo)簽對象進行分組;從所述分組的結(jié)果獲得一個或多個分組標(biāo)簽;依據(jù)預(yù)置的標(biāo)記文件解析映射表,匹配所述一個或多個分組標(biāo)簽中的標(biāo)簽對象的屬性;從相匹配的分組標(biāo)簽中獲取標(biāo)記文件解析用的數(shù)據(jù)。對標(biāo)簽對象按其公共屬性進行分組,使得標(biāo)記文件中原本無序的標(biāo)簽對象之間建立了關(guān)聯(lián),非常有利于做進一步的匹配分析,有效提高了標(biāo)記文件的解析成功率。
【專利說明】一種標(biāo)記文件解析方法和裝置
[0001]本發(fā)明專利申請是申請日為2012年3月30日、申請?zhí)枮?01210091311.4、名稱為“ー種標(biāo)記文件解析方法和裝置”的中國發(fā)明專利申請的分案申請。
【技術(shù)領(lǐng)域】
[0002]本申請涉及數(shù)據(jù)解析【技術(shù)領(lǐng)域】,特別是涉及ー種標(biāo)記文件解析方法和裝置。
【背景技術(shù)】
[0003]目前互聯(lián)網(wǎng)技術(shù)已經(jīng)深入影響人們的生活,諸如電子郵箱、論壇、網(wǎng)頁游戲等也已成為人們?nèi)粘9ぷ骱蛫蕵分胁豢苫蛉钡囊徊糠?。但上述互?lián)網(wǎng)應(yīng)用大多需要用戶注冊并登錄后才能使用,因此用戶需要記憶大量的用戶名和密碼。為了帳號的安全,用戶通常還需要設(shè)置較為復(fù)雜的數(shù)字、字母、特殊符號組合的密碼,進一歩加大了記憶的難度,在毎次登錄時還需要手工輸入,這一切無疑對用戶的使用造成了負(fù)擔(dān)。網(wǎng)頁自動填表就是解決這ー問題的技木,它可以在保存用戶在網(wǎng)頁中輸入的用戶名和密碼,在下一次用戶打開相同網(wǎng)頁吋,自動幫用戶填寫已保存的用戶名和密碼,用戶不必再記憶和填寫大量的用戶名和密碼,使用各種網(wǎng)絡(luò)資源和服務(wù)更加輕松隨意。
[0004]自動填表這項技術(shù)中的關(guān)鍵在于能夠預(yù)先檢測并判斷頁面中是否存在用戶需要填寫并提交的表単,是登錄表単?還是注冊表単?首先要能識別這些表單,然后才可以實現(xiàn)后續(xù)的保存、幫助用戶填寫的步驟。
[0005]目前,現(xiàn)有識別網(wǎng)頁表單的技術(shù)一般包括以下步驟:
[0006]首先,獲取網(wǎng)頁中的表單。通過識別網(wǎng)頁對應(yīng)的超文本代碼(HTML,HyperTextMarkup Language)中是否存在〈form〉標(biāo)簽,若存在,就將該〈form〉標(biāo)簽內(nèi)所有〈input〉輸入框作為ー個表単。參見下面的ー個〈form〉表單的示例代碼:
[0007]
<form action="form action.asp" metnod="get">
くp>用戶名:くinput type="text" name="fname" /></p>
く、石馬:くinput type="password" name="lname" /></p>
くinput type="submit" value=”提父” />
</form>
[0008]其次,識別所獲表單的類型,確定該表單是否為需要自動填表的對象。其關(guān)鍵是要能識別該表單是否是登錄表単。具體的,通過判斷該表單中輸入框〈input〉的類型type為密碼框password的輸入框個數(shù)來判斷該表單是否是登錄表単。若該表單中密碼輸入框個數(shù)為I則認(rèn)為該表單為登錄表単。
[0009]最后,對識別出的登錄表單實施自動填寫等相關(guān)操作。
[0010]可以看出,以上現(xiàn)有表單識別過程中首先要找到網(wǎng)頁中的〈form〉標(biāo)簽,將該〈form〉標(biāo)簽內(nèi)的輸入框作為ー個表單后才能實施后續(xù)進一歩的分析。但由于目前很多頁面中并不是所有表單實現(xiàn)都使用〈form〉標(biāo)簽,而是存在多種實現(xiàn)表單的方式,如在<div>標(biāo)簽中實現(xiàn)含有輸入框的表單,其HTML參考代碼如下:
[0011]
【權(quán)利要求】
1.一種標(biāo)記文件解析方法,其特征在于,包括: 獲取標(biāo)記文件中的標(biāo)簽對象,生成標(biāo)簽集合; 根據(jù)所述標(biāo)簽集合中標(biāo)簽對象的公共屬性,對所述標(biāo)簽對象進行分組,從所述分組的結(jié)果獲得ー個或多個分組標(biāo)簽; 依據(jù)預(yù)置的標(biāo)記文件解析映射表,匹配所述ー個或多個分組標(biāo)簽中的標(biāo)簽對象的屬 性; 從相匹配的分組標(biāo)簽中,獲取標(biāo)記文件解析用的數(shù)據(jù)。
2.如權(quán)利要求1所述的方法,其特征在于,根據(jù)所述標(biāo)簽集合中標(biāo)簽對象的公共屬性對所述標(biāo)簽對象進行分組,包括: 將標(biāo)簽集合中具有相同父節(jié)點的標(biāo)簽對象置于同一分組標(biāo)簽內(nèi)。
3.如權(quán)利要求2所述的方法,其特征在于,所述從所述分組的結(jié)果獲得ー個或多個分組標(biāo)簽之后還包括分組標(biāo)簽再分組,包括: 判斷當(dāng)前分組結(jié)果中ー個或多個分組標(biāo)簽; 若當(dāng)前分組標(biāo)簽包含兩個或多個標(biāo)簽對象,且所述兩個或多個標(biāo)簽對象不具有相同的父節(jié)點,則將當(dāng)前分組標(biāo)簽內(nèi)具有相同父節(jié)點的標(biāo)簽對象置于另一分組標(biāo)簽內(nèi); 重復(fù)上述步驟直到當(dāng)前分組標(biāo)簽不可再分組。
4.如權(quán)利要求1所述的方法,其特征在于,所述標(biāo)記文件是超文本標(biāo)記HTML文件。
5.如權(quán)利要求1所述的方法,其特征在于,所述標(biāo)簽對象是〈input〉輸入框; 所述依據(jù)預(yù)置的標(biāo)記文件解析映射表,匹配所述ー個或多個分組標(biāo)簽中的標(biāo)簽對象的屬性還包括: 若當(dāng)前分組標(biāo)簽中僅含有I個密碼輸入框,且位于所述密碼輸入框下級兄弟節(jié)點的標(biāo)簽對象不是文本輸入框,則當(dāng)前分組標(biāo)簽為登錄表単。
6.如權(quán)利要求5所述的方法,其特征在于,還包括: 若當(dāng)前分組標(biāo)簽為登錄表單,且當(dāng)前分組標(biāo)簽內(nèi)密碼輸入框存在多級父節(jié)點,且當(dāng)前分組標(biāo)簽不可再分,且所述密碼輸入框的最近父節(jié)點內(nèi)包括至少ー個文本輸入框,則將所述密碼輸入框最近父節(jié)點內(nèi)的標(biāo)簽對象置于新的分組標(biāo)簽內(nèi)。
7.如權(quán)利要求5所述的方法,其特征在于,所述依據(jù)預(yù)置的標(biāo)記文件解析映射表,匹配所述ー個或多個分組標(biāo)簽中的標(biāo)簽對象的屬性還包括: 若當(dāng)前分組標(biāo)簽中僅含有I個密碼輸入框,且位于所述密碼輸入框下級兄弟節(jié)點的標(biāo)簽對象是文本輸入框,則當(dāng)前分組標(biāo)簽為注冊表單。
8.如權(quán)利要求7所述的方法,其特征在于,所述依據(jù)預(yù)置的標(biāo)記文件解析映射表,匹配所述ー個或多個分組標(biāo)簽中的標(biāo)簽對象的屬性還包括: 若當(dāng)前分組標(biāo)簽中包含2個位置連續(xù)的且互為兄弟節(jié)點的密碼輸入框,則當(dāng)前分組標(biāo)簽為注冊表單。
9.ー種網(wǎng)頁填充方法,其特征在于,包括:標(biāo)記文件解析;目標(biāo)數(shù)據(jù)存儲;目標(biāo)數(shù)據(jù)填充; 所述標(biāo)記文件解析包括: 獲取標(biāo)記文件中的標(biāo)簽對象,生成標(biāo)簽集合; 根據(jù)所述標(biāo)簽集合中標(biāo)簽對象的公共屬性,對所述標(biāo)簽對象進行分組,從所述分組的結(jié)果獲得ー個或多個分組標(biāo)簽; 依據(jù)預(yù)置的標(biāo)記文件解析映射表,匹配所述ー個或多個分組標(biāo)簽中的標(biāo)簽對象的屬性; 相匹配的分組標(biāo)簽為目標(biāo)輸入項; 所述目標(biāo)數(shù)據(jù)存儲包括: 從所述目標(biāo)輸入項中獲取目標(biāo)數(shù)據(jù)并存儲在配置信息中; 所述目標(biāo)數(shù)據(jù)填充包括: 從配置信息中獲取目標(biāo)數(shù)據(jù)并填充在所述標(biāo)記文件對應(yīng)的目標(biāo)輸入項中。
10.一種標(biāo)記文件解析裝置,其特征在于,包括: 獲取模塊,用于獲取標(biāo)記文件中的標(biāo)簽對象; 集合生成模塊,用于將所述獲取模塊得到的標(biāo)簽對象生成標(biāo)簽集合; 分組模塊,用于根據(jù)所述標(biāo)簽集合中標(biāo)簽對象的公共屬性對所述標(biāo)簽對象進行分組; 分組標(biāo)簽獲取模塊,用于獲取所述分組模塊生成的ー個或多個分組標(biāo)簽; 標(biāo)記文件解析映射表,用于預(yù)先存儲標(biāo)記文件的解析映射信息; 解析模塊,用于依據(jù)標(biāo)記文件解析映射表,匹配所述分組標(biāo)簽獲取模塊所獲取的ー個或多個分組標(biāo)簽中的標(biāo)簽對象的屬性;從相匹配的分組標(biāo)簽中獲取標(biāo)記文件解析用的數(shù)據(jù)。
【文檔編號】G06F17/30GK103577578SQ201310548150
【公開日】2014年2月12日 申請日期:2012年3月30日 優(yōu)先權(quán)日:2012年3月30日
【發(fā)明者】杭程, 李超, 萬勇, 任寰 申請人:奇智軟件(北京)有限公司, 北京奇虎科技有限公司