手寫xpath定位公式


做web自動化,之前我們已經將環境搭建好了,現在的話總結下怎么定位元素的

最基本的元素定位是有6種:

driver.find_element_by_id("")
driver.find_element_by_class_name("")
driver.find_element_by_link_text("")
driver.find_element_by_partial_link_text("")
driver.find_element_by_name("")
driver.find_element_by_tag_name("")

以上這6中方式一般在做web自動化項目的時候我們用的還是比較少的,常用的還是xpath和css,css目前我沒有去研究學習,這里我總結下xpath是怎么用的吧

在瀏覽器重一般自帶的功能可以讓你直接復制xpath,但是這種方式小打小鬧還可以,真正做項目也沒有誰會去復制xpath,都是靠自己手動去寫的,那么怎么取自己手寫xpath呢?

下面介紹幾種方式來手寫:

1、//標簽名[@屬性名=值]

定位百度首頁中的輸入框:

 

 2、通過部分屬性值來匹配

//標簽名[contains(@屬性名,值)]

 

 3、利用文本

文本全部匹配://標簽名[text()=值]

 

 

文本部分匹配://標簽名[contains(text(),值)]

 

 4、軸定位

相對於以上3中方式,軸定位是比較復雜的了,一般用以上3中還是定位不了,我們就會采用軸定位的方式了

先介紹下軸定位的語法:

軸名稱::節點名稱

軸名稱常用的有以下:

ancestor:祖先節點,包括父節點

parent:父節點

preceding:當前節點標簽之前的所有節點

prececing-sibling:當前節點前的所有兄弟節點(同級)

following:當前節點標簽之后的所有節點

following-sibling:當前節點標簽之后的所有兄弟節點(同級)

舉個栗子吧:課堂派中的注冊框中的已有賬號用其他方式是定位不了的,需要采用軸定位方式

//div[@class="choose"]/following-sibling::a/span[@class="str1"]

 

 


免責聲明!

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



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