一、簡介
XPath 是一門在 XML 文件中查詢資訊的語言。XPath 用於在 XML 文件中通過元素和屬性進行導航。
二、定位
2.1 利用自己的本身屬性定位
//標籤[文字屬性和值]
下面百度的例子:
//a[text()='個人中心'] #利用文案
//div[@class='s-isindex-wrap' and @class='s-user-set-menu'] #利用class並且用and連線,表示只有兩個屬性都滿足時才確定元素
//div[@class='s-isindex-wrap' or @class='s-user-set-menu'] #利用class並且用and連線,表示只要兩個屬性滿足其中一個時就確定元素
//div[@id='s_user_name_menu'] # id定位
//div[contains(@class,'s-user-set-menu')] #只要class中有s-user-set-menu字串便定位,contains多用在文案定位中
2.2 利用父節點定位
定位個人中心
//div[@id='s_user_name_menut']/div/a
因為個人中心的父節點就一個div無法定位,所以找到div的上一級
先定位到他的上一級的位置,然後找到個人中心。例如:找到id=s_user_name_menu的位置,他的下一級中又個div然後才是個人中心
div中有好多a標籤,如果是第一個a標籤就直接寫a或者a[0],如果不是第一個a標籤寫成a[index]。index為索引位置,索引從0開始計算
2.3 依靠子節點定位
利用個人中心定位id=s_user_name_menu的位置
//div[div[a[text()='個人中心']] ]
第一個中括號為定位的位置,中括號裡面的中括號為第一個中括號的下一級位置,依次類推
2.4 同級定位
通過個人中心定位賬號設定
//a[text()='個人中心']-sibling=a 或者 //a[text()='個人中心']-sibling::a
緊跟著定位的位置下一個a標籤
2.5 萬用字元*定位
//div[@*='s_user_name_menu'] # 查詢div標籤中任何屬性的值只要為s_user_name_menu便成功定位
//*[@id='s_user_name_menu'] # 在任何標籤下,只要id='s_user_name_menu'便成功定位
2.6 從根目錄開始定位,用“/”開始
/html/body/xxxx/div/xxx