定位一組物件 例如checkbox

2021-08-21 18:07:34 字數 1122 閱讀 3813

定位一組物件:

一、場景:

1. 批量勾選頁面所有checkbox

2. 先獲取一組物件,再從這組物件中過濾中符合條件的物件 ,例如勾選符合某個屬性的checkbox,或者 選擇最後乙個

二、例子:

目標1:選中checkbox【公司整改通知單】

#選擇頁面上所有的tab name為input且type為checkbox的元素

checkboxes = driver.find_elements_by_css_selector("input[type='checkbox']")      # css定位

#checkboxes = driver.find_elements_by_xpath("//input[@type='checkbox']")       #xpath定位

#使用tabname,checkboxes = driver.find_elements_by_tab_name('input'),此方法也可以,但此方法是定位所有input

for checkbox in checkboxes:

if checkbox.get_attribute("data-id") == "30001":   # 如果 checkbox的data-id屬性為30001,則選 中;不加條件則將所有chekcbox選中

checkbox.click()

目標2: 列印當前頁面上type為checkbox的個數

counts = len(checkboxes)

目標3:把頁面上最後乙個checkbox選中

driver.find_elements_by_css_selector("input[type='checkbox]").pop().click()

目標4:用 pop()勾選某個選項

pop(0)預設獲取一組元素中的第乙個

pop(1)預設獲取一組元素中的第二個

pop()函式用於獲取列表中的乙個元素(預設為最後乙個元素),並返回該元素的值。

selenium定位一組物件

webelement 介面同樣提供了定位一組元素的方法 find elements。定位一組物件一般用於以下場景 1.批量操作物件,比如將頁面上所有的checkbox都勾上 2.先獲取一組物件,再在這組物件中過濾出需要具體定位的一些物件。比如定位出頁面上所有的 checkbox,然後選擇最後乙個。有...

selenium 定位一組元素

在本章的第一節我們已經學習了 8 種定位方法,那 8 種定位方法是真對單元素定位的,webdriver 還提供了與之對應的 8 種定位方法用於定位一組元素。find elements by id find elements by name find elements by class name fi...

十 定位一組元素

webdriver還提供了8種用於定位一組元素的方法。find elements by id find elements by name find elements by class name find elements by tag name find elements by link text ...