Selenium+Python之八種元素定位方法
如有疑問,可以留言或私信問我喲~
一、id定位
driver.find_element_by_id("txtUaserName").send_keys("容音@lily")
二、name定位
driver.find_element_by_name("username").send_keys("容音@lily")
三、class定位
driver.find_element_by_class_name("")
四、tag定位
driver.find_element_by_tag_name("input")
五、link定位
driver.find_element_by_link_text("忘記密碼").click()
六、partial link定位
driver.find_element_by_partial_link_text("忘記").click()
七、XPath定位
1、絕對路徑定位
獲取絕對路徑的方法:
第一步:按F12
第二步:Ctrl+Shift+C,點選要定位的元素
第三步:在程式碼區域右擊,選擇Copy-CopyXpath
driver.find_element_by_xpath("/html/body/div/div[2]/div[1]/div[3]/div/button").click()
2、利用元素屬性定位
driver.find_element_by_xpath("//input[@id='txtUaserName']").send_keys("容音@lily")
#Xpath元素屬性定位
driver.find_element_by_xpath("//input[@type='button']").click()
//表示當前頁面某個目錄下,input表示定位元素的標籤名, [@id='txtUaserName']表示當前元素的ID值等於txtUaserName'
3、層級與屬性結合
如果元素屬性沒有可利用的屬性值,則可以查詢上一級屬性
#xpath層級與屬性結合
driver.find_element_by_xpath("//p[@class='ng-scope']/input").send_keys("容音@lily")
4、使用邏輯運算子
使用邏輯運算子連線多個屬性來查詢元素
driver.find_element_by_xpath("//input[@id='txtUaserName'and @name='username']").send_keys("容音@lily")
八、CSS定位
class屬性定位
id屬性定位