selenium定位與常見操作

Oui.發表於2020-10-28
常見操作
find_element(By.ID,'kw').send_keys("我是小可愛")  # 輸入
find_element(By.ID,'su').click()   # 點選
find_element(By.ID,'su').clear()   # 清空
Xpath
表示式 ❤️結果 ❤️
/bookstore/book[1]選取屬於bookstore子元素的第一個book元素
/bookstore/book[last()]選取屬於bookstore子元素的最後一個book元素
/bookstore/book[last()-1]選取屬於bookstore子元素的倒數第二個元素
/bookstore/book[position() < 3]選取最前面的兩個屬於bookstore元素的子元素的book元素
//title[@lang=‘eng’]選取所有title元素,且這些元素擁有值為eng的lang屬性
/bookstore/book[price>35.00]選取bookstore元素的所有book元素,且其中的price元素的值必須大於35.0
/bookstore/book[price>35.00]/title選取bookstore元素中的book元素的所有title元素,且其中的price元素的值須大於35.00
nodename選取此節點的所有節點
/從根節點選取
//從匹配選擇的當前節點選擇文件的節點,而不考慮他們的位置
.選取當前節點的父節點
選取當前節點的父節點
@選取屬性
舉個例子-Xpath
專案 ❤️Value ❤️
‘//*[@id=“kw”]’‘//*[@id=“kw”]’/a[last()-1]’
Css Selector

對於appnium不友好,對巢狀的網頁友好,對樣式遍歷,速度較快

選擇器 ❤️栗子 ❤️列子描述 ❤️
.class.intro選擇class="intro"的所有元素
#id#firstname選擇id=“first"的所有元素
**選擇所有元素
elementp選擇所有< p >元素
element,elementdiv,p選擇所有< div >元素和所有的< p >元素
element elementdiv p選擇 < div >元素內部的所有< p >元素
element > elementdiv>p選擇所有父元素為 < div >元素的所有< p >元素
element+elementdiv+p選擇緊接在< div >元素之後的所有< p >元素
[attribute][target]選擇所有target屬性的所有元素
[attribute=value][target=_blank]選擇target="_blank"的所有元素
:nth-child(n)p:nth-child(2)選擇屬於其父元素的第二個子元素的每個< p >元素
element1~element2p~ul選擇前面有< p >元素的每個< ul >元素
舉個例子-Css-selector
$(’#kw’) ❤️$(‘id=kw’) ❤️
$(‘name=wd’) ❤️$(’#s_tab b’) ❤️
$(‘#s_tab a:nth-child(2)’) ❤️ ❤️$(‘#s_tab a:nth-last-child(1)’)

相關文章