[發(fā)明專利]一種基于Web元素屬性特征的定位方法在審
| 申請?zhí)枺?/td> | 202110474540.3 | 申請日: | 2021-04-29 |
| 公開(公告)號: | CN113177168A | 公開(公告)日: | 2021-07-27 |
| 發(fā)明(設(shè)計(jì))人: | 劉春剛;許凱;趙東旭;田永軍 | 申請(專利權(quán))人: | 上海云擴(kuò)信息科技有限公司 |
| 主分類號: | G06F16/955 | 分類號: | G06F16/955;G06F40/14 |
| 代理公司: | 北京盛凡智榮知識產(chǎn)權(quán)代理有限公司 11616 | 代理人: | 徐佳慧 |
| 地址: | 200240 上海市*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 web 元素 屬性 特征 定位 方法 | ||
1.一種基于Web元素屬性特征的定位方法,其特征在于:所述Web元素定位方法根據(jù)不同元素最優(yōu)化選擇特征屬性值,利用特征屬性值構(gòu)建目標(biāo)元素XPath查詢字符串,其中,Web元素定位方法包括以下幾個(gè)步驟:
步驟一:根據(jù)目標(biāo)元素不同類型,確定需要驗(yàn)證的屬性名稱;
步驟二:獲取目標(biāo)元素的特征值;
步驟三:根據(jù)元素特征值構(gòu)建XPath。
2.根據(jù)權(quán)利要求1所述的一種基于Web元素屬性特征的定位方法,其特征在于:所述步驟一中,在確定需要驗(yàn)證的屬性名稱時(shí),先把元素屬性分為通用屬性以及專有屬性,其中:
通用屬性是指HTML元素普遍存在并經(jīng)常被使用的屬性,具體如下:Id:元素ID屬性字段,該屬性規(guī)定了元素的唯一標(biāo)識符;Name:元素Name字段,該屬性規(guī)定了元素的名稱;Title:元素Title字段,常用來解釋元素的使用用途,當(dāng)鼠標(biāo)懸停在元素上面時(shí),提示框顯示的文本;Text:元素內(nèi)部的文本;
專有屬性是指根據(jù)不同的元素類型,讀取元素特有的屬性,具體如下:
Input HTMLE lement元素專有屬性:Type:用來表明該Input元素用于輸入的內(nèi)容或者是否是表單提交等操作;
Img HTMLE lement元素專有屬性:Src:該屬性規(guī)定了嵌入圖片的文件路徑;Alt:該屬性規(guī)定了對圖像的文本描述,在圖片無法呈現(xiàn)時(shí)的替代文本或者用于屏幕閱讀器將這些描述讀給使用者聽;
Iframe HTMLE lement元素專有屬性:Src:內(nèi)嵌的頁面地址;
A HTMLE lement元素專有屬性:Href:包含超鏈接指向的URL或URL片段;Target:指定在何處顯示鏈接的資源;
最終根據(jù)目標(biāo)元素通用屬性以及專有屬性可以獲得該元素屬性數(shù)組ArrList。
3.根據(jù)權(quán)利要求1所述的一種基于Web元素屬性特征的定位方法,其特征在于:所述步驟二中獲取目標(biāo)元素的特征值的具體流程包括:
(1)構(gòu)建一個(gè)目標(biāo)元素特征屬性AMap,以及一個(gè)整數(shù)Count,用來記錄全局中通過當(dāng)前AMap可以匹配到的元素個(gè)數(shù),初始值為無限大;
(2)逐一從AttrList中獲取當(dāng)前的屬性名稱K,獲取到當(dāng)前元素屬性名稱K所對應(yīng)的值V,加入到AMap中;全局查找可以匹配AMap中所有屬性的元素,記錄下當(dāng)前滿足條件的元素?cái)?shù)量N,如果此時(shí)N的值并未小于Count,表明當(dāng)前屬性K的加入并沒有使目標(biāo)元素定位更加精確,此時(shí)需要從AMap中刪除屬性K以及對應(yīng)的V;否則更新Count的值為當(dāng)前滿足條件的元素個(gè)數(shù)N;循環(huán)執(zhí)行本步驟,直至遍歷完AttrList中所有屬性,或者通過AMap中的屬性只可以唯一匹配到目標(biāo)元素;
(3)檢查Count字段,如果該字段為1,則表明通過AMap可以唯一定位到目標(biāo)元素,此時(shí)的AMap中的屬性值即為該目標(biāo)元素的特征值;如果該字段大于1,則表明頁面中滿足AMap中的屬性值還有其他元素,此時(shí)需要進(jìn)一步增加特征值,來唯一確認(rèn)目標(biāo)元素,這里采用基于Dom樹結(jié)構(gòu)的深度遍歷算法,獲取所有滿足AMap屬性值的元素列表ElementArray,記錄下目標(biāo)元素位于ElementArray中的位置索引Index,此時(shí)Index連同AMap中所有屬性值可以作為目標(biāo)元素的特征值。
4.根據(jù)權(quán)利要求1所述的一種基于Web元素屬性特征的定位方法,其特征在于:所述步驟三中,XPath指的是XML路徑語言,XML路徑語言可以用于檢測文檔中某個(gè)節(jié)點(diǎn)是否與某個(gè)模式(pattern)匹配,XPath提供豐富的函數(shù),可以靈活的支持多重屬性匹配,而且主流瀏覽器中均支持XPath。
5.根據(jù)權(quán)利要求1所述的一種基于Web元素屬性特征的定位方法,其特征在于:所述步驟二中獲取的元素屬性特征值,構(gòu)建目標(biāo)元素的XPath字符串,該XPath是基于元素的屬性獲取的定位特征值,在Html頁面結(jié)構(gòu)發(fā)生變化后,也可以很穩(wěn)定的定位到目標(biāo)元素。
6.根據(jù)權(quán)利要求1所述的一種基于Web元素屬性特征的定位方法,其特征在于:所述步驟一和步驟二選擇特征明顯的元素作為錨點(diǎn)元素,產(chǎn)生屬性特征集合,在步驟三根據(jù)錨點(diǎn)元素到目標(biāo)元素的相對位置來產(chǎn)生XPath唯一定位目標(biāo)元素。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海云擴(kuò)信息科技有限公司,未經(jīng)上海云擴(kuò)信息科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110474540.3/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 提供共享Web模塊的系統(tǒng)和方法
- 管理環(huán)球網(wǎng)網(wǎng)頁中的環(huán)球網(wǎng)媒體的系統(tǒng)及其實(shí)現(xiàn)方法
- 一種WEB業(yè)務(wù)實(shí)現(xiàn)系統(tǒng)、裝置及方法
- 高速緩存廣播信息的方法和裝置
- 基于QoS指標(biāo)和Web服務(wù)輸出參數(shù)的Web服務(wù)組合方法和裝置
- Web托管審查方法、裝置及Web托管系統(tǒng)
- 用于信息處理和Web瀏覽歷史導(dǎo)航的方法和設(shè)備及電子裝置
- 用于將web站點(diǎn)轉(zhuǎn)換為目標(biāo)web app站點(diǎn)的方法和裝置
- 用于防護(hù)WEB漏洞的方法和設(shè)備
- 一種Web攻擊報(bào)告生成方法、裝置、設(shè)備及計(jì)算機(jī)介質(zhì)





