selenium中Xpath和CSS Selector的使用方法


一、selenium中Xpath的使用方法

1. 什么是xpath?

  Xpath是XML的路徑語言,通俗一點講就是通過元素的路徑來查找這個標簽元素

2. 練習Xpath的工具

  火狐瀏覽器,下載插件FireBug和FirePath

3. Xpath使用方法

  注:默認死格式,先寫//*代表定位頁面下的所有元素  

  (1)Xpath支持ID、class和name定位功能

    通過id定位: //*[@id='i1']

    通過class定位://*[@class='classname']

    通過name定位: //*[@name='name']

  (2)如果便簽沒有id,class和name三個綜述性,Xpath還支持屬性定位功能

    @代表以屬性定位,后面看而已接標簽中的任意屬性,比如:

    //*[@placeholder='請通過XPATH定位元素']

  (3)當標簽的屬性重復時,Xpath提供了通過標簽來進行過濾,//input顯示所有的input標簽

    //input[@placeholder='請通過XPATH定位元素']

  (4)當標簽頁重復時,Xpath提供了層級過濾

    例如:找不到兒子,那么久先找他的父級,實在不行可以找他的祖父級

    //div/div[@id='dis']

  (5)當層級都重復時,可以通過單個層級的屬性進行定位

    //div/div[@id='w']/div

  (6)一個元素它的兄弟元素跟它的標簽一樣,這時候無法通過層級定位,因為都是一個父親生的,多胞胎兒子,Xpath提供了索引過濾,索引從1開始,而非0

    //select[2]

  (7)上面幾種如果都用上了惠州還重復,我們就可以使用Xpath提供的終極神器,邏輯運算定位。and或or

    //select[@name='city' and @size='4']

    //select[@name='city' or @size='4']

 

二、selenium中CSS Selector的使用方法

1. 什么是CSS Selector?

  CSS Selector定位實際就是HTML的CSS選擇器的標簽定位

2. 工具

  火狐瀏覽器,下載插件FireBug和FirePath

3. CSS Selector的使用方法

(1)Css selector支持id、class的定位,與html中的css定位相同

  通過id定位  #i1

  通過class定位  .classname

  通過class定位多個class  .classname.c2.c3

(2)通過屬性定位,Css Selector支持任意屬性定位

  [name='name']

(3)單單屬性定位不足以滿足我們的定位需求,Css Selector提供了標簽屬性組合定位

  input[name='name']   input標簽下name屬性等於‘name’的

  input#i1   input標簽下id是i1的

  input.classname  input標簽下class是classname的

  div.inner>input  div標簽下class是inner的 帶有input標簽的(注意尖角號)

  Div.inner下有多個,但是不能用索引定位,要結合尖角號+屬性使用

(4)Css selector多屬性組合過濾,沒有and,只需要多個[]連接就可以

  select[name='city'][size='4'][multiple='multiple']

(5)Css selector模糊匹配

  ^= 匹配元素屬性以什么開頭    input[value^="登"]

  $= 匹配屬性以什么結尾    input[value$="錄"]  

  *= 匹配屬性包含什么值     input[value*="錄"]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM