使用XPath定位資訊繼1

2021-08-22 16:02:10 字數 1822 閱讀 8366

4.string-length 函式返回字串的字元數, 你應該用 < 替代 < , 用 > 代替 >

選擇名字長度為3 的元素:

//*[string-length(name()) = 3]

< q />

< ssss />

< bb />

< dddddddd />

< eeee />

多個路徑可以用分隔符| 合併在一起

選擇所有的ccc 和bbb 元素:

//ccc | //bbb

< aaa >

< ddd >

< eee />

選擇所有的bbb 元素和所有是aaa 的子元素的eee 元素:

/aaa/eee | //bbb

< aaa >

< ccc />

< ddd >

< ccc />

5. child 軸(axis) 包含上下文節點的子元素, 作為預設的軸, 可以忽略不寫.

/aaa 等價於 /child::aaa

< bbb />

< ccc />

/child::aaa/child::bbb 等價於 /aaa/bbb , 當然二者都可以被合併 :/child::aaa/bbb

< aaa >

< ccc />

6. 星號* 表示選擇所有由星號之前的路徑所定位的元素

選擇所有路徑依附於 /aaa/ccc/ddd 的元素 :/aaa/ccc/ddd/*

< aaa >

< *** >

< ddd >

< bbb />

< bbb />

< eee />

< fff />

< ccc >

< ddd >

< ccc >

< bbb >

< bbb >

< bbb />

7. 方塊號裡的表示式可以進一步的指定元素, 其中數字表示元素在選擇集裡的位置, 而last() 函式則表示選擇集中的最後乙個元素.

選擇aaa 的第乙個bbb 子元素:

/aaa/bbb[1]

< aaa >

< bbb />

< bbb />

< bbb />

選擇aaa 的最後乙個bbb 子元素:

/aaa/bbb[last()]

< aaa >

< bbb />

< bbb />

< bbb />

8. 屬性通過字首 @ 來指定

9. descendant ( 後代) 軸包含上下文節點的後代, 乙個後代是指子節點或者子節點的子節點等等, 因此 descendant 軸不會包含屬性和命名空間節點.

選擇 /aaa/bbb 的所有後代元素 : /aaa/bbb/descendant::*

< aaa >

< bbb >

< ccc >

< ddd >

< eee >

< ddd >

< fff />

10. 如果有父節點的話,parent 軸(axis) 包含上下文節點的父節點

選擇ddd 元素的所有父節點 //ddd/parent::*

< aaa >

< ddd >

< ddd />

< eee />

< ddd >

< ddd >

< fff />

使用XPath定位資訊繼3

16.descendant or self 軸 axis 包含上下文節點本身和該節點的後代節點 aaa descendant or self aaa bbb ccc zzz ddd ccc ddd 17.ancestor or self 軸 axis 包含上下文節點本身和該節點的祖先節點 aaa d...

Selenium使用Xpath定位

應該是不全面的,暫時整理這些,後續補充吧。1.絕對路徑 格式 driver.find element by xpath 絕對路徑 例子 driver.find element by xpath html body div x form input x 代表第x個 div標籤 索引從1開始 當頁面元素...

selenium使用Xpath定位之完整篇

其中有一片文章提到了xpath元素定位,但是該文章中有些並不能適應一些特殊與個性化的場景。在文字中提供xpath元素的定位終極篇,你一定能在這裡找到你需要的解決辦法。by.xpath html body div form input by.xpath input 第三種方法 通過元素索引定位 by....