selenium Web控制項定位

2022-07-27 20:00:20 字數 1073 閱讀 3628

web控制項定位與常見操作:

xpath

css 

selenium的點選與輸入:click()、send_keys()

1.xpath

缺點:速度慢,因為它是從頭到尾一點點遍歷到的

優點:萬能定位方式 

1)/代表子元素,相當於上乙個元素的兒子; 可以定位到它的孩子,但是定位不到它的孫子;

比如:$x('//*[@id="s_tab"]//b』),還可以用$x('//*[@id="s_tab"]/b』),但是如果是好幾層 這樣就找不到了

//代表所有元素 ,相當於當前元素的子子孫孫

//* 一般以這個開頭,代表當前頁面的子子孫孫

2)定位方式:在chrome控制台下輸入

console->clear( )先清空一下原有資訊

$x('//*[@id="s_tab"]//b')【xpath在控制台執行方式$x()】

點選b元素,就可以定位到【網頁】的位置

如下: 定位全部,定位第乙個,最後乙個,倒數第二個

一般來說id和name屬性都是唯一的,這是前端工程師約定俗成的事情,並不是絕對的

❗️其核心: 具體操作就是先定位父元素,在去找子元素,或者子子元素

2. css selector

如下圖使用css選擇器定位元素

$('#s_tab b』)

$('[id=su]』)

查詢資訊、網頁,a標籤,如果括號中為1就找不到了,是第二個孩子,不是第乙個孩子

$('#s_tab a:nth-child(2)』) 

$('#s_tab a:nth-last-child(1)』)其中空格代表子孫子子孫孫,而》代表子元素,#換成id也是一樣的,表示的一樣

by.id檢視原始碼 

#by.id檢視原始碼

from selenium.webdriver.common.by import by

self.driver.find_element(by.id, "su")

find_element_by_link_text()方法其實就是對find_element進行了一層封裝

selenium web頁面元素定位方法

1.id定位 find element by id su 通過id定定位元素 2.name定位 find element by id name 通過元素name定位元素 3.class定位 find element by class name class class 屬性來定位元素 5.link定位...

appium 定位控制項

id 定位 通過uiautomatorviewer.bat 工具可以檢視物件的id屬性。如果目標裝置的api level低於18則uiautomatorviewer不能獲得對應的resource id,只有等於大於18的時候才能使用。開啟uiautomatorviewer.bat工具 resourc...

python selenium 日期控制項定位

在做自動化時經常會遇到各種各樣的時間選擇框 如下圖 那麼如何去精準選擇想要的時間呢?如果需要乙個乙個去點選,那肯定非常不穩定,也很難去選擇時間跨度大的日期和精準日期。這個時候我們就需要用到萬能的js了,一般日期框都是唯讀屬性,通過js將唯讀屬性去掉,就可以直接 send keys 輸入時間即可 這裡...