您好,登錄后才能下訂單哦!
文件名:checkbox.html
<html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> <title>Checkbox</title> <link href="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"/> <script src="http://cdn.bootcss.com/bootstrap/3.3.0/css/bootstrap.min.js"> </script> </head> <body> <h4>Checkbox</h4> <div class="well"> <form class="form-horizontal"> <div class="control-group"> <label class="control-label" for='c1'>checkbox1</label> <div class="controls"> <input type="checkbox" id="c1"/> </div> </div> <div class="control-group"> <label class="control-label" for='c2'>checkbox2</label> <div class="controls"> <input type="checkbox" id="c2"/> </div> </div> <div class="control-group"> <label class="control-label" for='c3'>checkbox3</label> <div class="controls"> <input type="checkbox" id="c3"/> </div> </div> </form> </div> </body> </html>
文件名:test.py
from selenium import webdriver import os,time driver = webdriver.Chrome() file_path='file:///'+os.path.abspath('checkbox.html') driver.get(file_path) #代碼片段一: inputs = driver.find_elements_by_tag_name('input') for i in inputs: if i.get_attribute('type')=='checkbox': i.click() time.sleep(1) #代碼片段二: #通過XPath找到type=checkbox的元素 checkboxes=driver.find_elements_by_xpath("http://input[@type='checkbox']") #通過CSS找到type=chekcbox的元素 checkboxes=driver.find_elements_by_css_selector("input[type=checkbox]") for checkbox in checkboxes: checkbox.click() time.sleep(1) #代碼片段三: inputs = driver.find_elements_by_tag_name('input') for i in inputs: if i.get_attribute('id')=='c1': i.click() time.sleep(3) driver.find_elements_by_css_selector("input[type=checkbox]").pop.click pop(-1)、pop()默認獲取一組元素中的最后一個 pop(0)獲取一組元素中的第一個 pop(1)獲取一組元素中的第二個 driver.quit()
上述test.py代碼中,
代碼片段一:通過find_elements_by_tag_name('input')獲取input,獲取到的input元素包含type和id屬性,因此不唯一,通過get_attribute方法指定對應的屬性找到唯一元素,checkbox,從而確定了元素的定位
代碼片二:通過find_elements_by_xpath獲取到一系列的checkbox元素,屬于同類別元素
通過find_elements_by_css_selector獲取到一系列的checkbox元素,屬于同類別元素
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。