Selenium學習之==>WebDriverApi接口詳解
阿新 • • 發佈:2018-07-20
關閉當前頁面 play 新的 screen ectable not 截取圖片 name exceptio
瀏覽器操作
1 driver.back() # 後退 2 driver.forward() # 前進 3 driver.refresh() # 刷新
窗口操作
1 driver.get_window_size() # 獲取瀏覽器大小 2 driver.set_window_size(‘500‘,‘500‘) # 設置瀏覽器大小 3 driver.maximize_window() # 最大化瀏覽器 4 driver.current_window_handle() # 返回當前操作的瀏覽器句柄5 driver.window_handles() # 返回所有打開server的瀏覽器句柄
截取當前頁面(截圖)
1 driver.get_screenshot_as_file(‘pic.png‘) # 文件名必須以小寫的.png結尾
執行JavaScript語句
1 driver.execute_script(‘JavaScript Commond‘) 2 driver.execute_script(‘window.scrollTo(0,0);‘) # 操作滾動條到瀏覽器最上面
Cookie操作
1 # 根據cookieKey,獲取cookie信息2 cookie = driver.get_cookie(‘cookieKey‘) 3 4 # 獲取所有cookie信息 5 cookies = driver.get_cookies() 6 7 # 添加cookie,嚴格按照格式添加,cookie的key為name,value為value 8 driver.add_cookie({‘name‘: ‘tmp‘, ‘value‘: ‘123123123‘}) 9 10 # 刪除所有cookie信息 11 driver.delete_all_cookies() 12 13 # 根據cookieKey刪除對應cookie 14driver.delete_cookie(‘UiCode‘)
瀏覽器句柄及切換
1 print(driver.window_handles) # 獲取所有打開server的瀏覽器句柄,返回的是一個list 2 bl = driver.find_element_by_css_selector(‘[href="/new-index/"]‘) 3 bl.click() # 點擊連接打開一個新的頁面 4 print(driver.window_handles) # 再次獲取所有打開server的瀏覽器句柄 5 handes = driver.window_handles 6 driver.switch_to.window(handes[1]) # 切換瀏覽器句柄到新打開的這個頁面 7 cl = driver.find_element_by_css_selector(‘#newtag‘) 8 cl.send_keys(‘AAAA‘) 9 driver.close() # 關閉當前指針指向句柄的頁面 10 driver.switch_to.window(handes[0]) # 手動將瀏覽器指針切換回之前的頁面 11 driver.find_element_by_css_selector(‘#i1‘).send_keys(‘EEEE‘) 12 driver.quit() # 關閉所有頁面
關閉與退出
1 driver.close() # 關閉當前頁面,關閉頁面後如果指針切換了,必須手動切回來 2 driver.quit() # 關閉所有頁面,退出驅動
ElementApi接口
1 # 根據標簽屬性名稱,獲取屬性value 2 element.get_attribute(‘style‘) 3 4 # 向輸入框輸入字符串 如果input的type為file類型 可以輸入文件絕對路徑上傳文件 5 element.send_keys() 6 7 # 清除文本內容 8 element.clear() 9 10 # 鼠標左鍵點擊操作 11 element.click() 12 13 # 通過屬性名稱獲取屬性 14 element.get_property(‘id‘) 15 16 # 返回元素是否可見 True or False 17 element.is_displayed() 18 19 # 返回元素是否被選中 True or False 20 element.is_selected() 21 22 # 返回標簽元素的名字 23 element.tag_name 24 25 # 獲取當前標簽的寬和高 26 element.size 27 28 # 獲取元素的文本內容 29 element.text 30 31 # 模仿回車按鈕 提交數據 32 element.submit() 33 34 # 獲取當前元素的坐標 35 element.location 36 37 # 截取圖片 38 element.screenshot()
彈框處理
1 driver.find_element_by_css_selector(‘#confirm‘).click() # 點擊按鈕,彈出彈框 2 print(driver.switch_to.alert.text) # 打印彈框返回的文本文字 3 driver.switch_to.alert.accept() # 確認 4 driver.switch_to.alert.dismiss() # 取消
常見異常
1 NoSuchElementException:沒有找到元素 2 3 NoSuchFrameException:沒有找到iframe 4 5 NoSuchWindowException:沒找到窗口句柄handle 6 7 NoSuchAttributeException:屬性錯誤 8 9 NoAlertPresentException:沒找到alert彈出框 10 11 ElmentNotVisibleException:元素不可見 12 13 ElementNotSelectableException:元素沒有被選中 14 15 TimeoutException:查找元素超時
Selenium學習之==>WebDriverApi接口詳解