摘要:和是中兩個非常重要的類,使用它們提供的方法可以實現與瀏覽器和頁面元素的各種交互操作。該方法在每個只需要調用一次等待時間單位為秒設置一個頁面完全加載完成的超時等待時間等待時間單位為秒設置腳本執行的超時時間,應該在拋出錯誤之前等待時間單位為秒
WebDriver 和 WebElement 是 Selenium 中兩個非常重要的類,使用它們提供的方法可以實現與瀏覽器和頁面元素的各種交互操作。WebDriver 提供了許多用來與瀏覽器交互的功能和設置,我們可以通過使用 WebDriver 的功能和一些方法來實現與瀏覽器窗口、警告、框架和彈出窗口的交互,它也提供了自動化操作瀏覽器導航欄、設置 cookies、截屏等特性,后面將一一介紹。
WebDriver 功能功能/屬性 | 描述 | 實例 |
---|---|---|
current_url | 獲取當前頁面的 URL 地址 | driver.current_url |
current_window_handle | 獲取當前窗口的句柄 | driver.current_window_handle |
name | 獲取該實例底層的瀏覽器名稱 | driver.name |
orientation | 獲取當前設備的方位 | driver.orientation |
page_source | 獲取當前頁面的源代碼 | driver.page_source |
title | 獲取當前頁面的標題 | driver.title |
window_handles | 獲取當前 session 里的所有窗口的句柄 | driver.window_handles |
方法 | 描述 | 參數 | 實例 |
---|---|---|---|
back( ) | 后退一步到當前會話的瀏覽器歷史記錄中最后一步操作前的頁面 | driver.back( ) | |
close( ) | 關閉當前瀏覽器窗口 | driver.close( ) | |
forward( ) | 前進一步到當前會話的瀏覽器歷史記錄中前一步操作后的頁面 | driver.forward( ) | |
get(url) | 訪問目標 URL 并加載網頁到當前的瀏覽器會話 | URL 是目標網頁的網站地址 | driver.get ("https://www.baidu.com/") |
maximize_window( ) | 最大化當前瀏覽器窗口 | driver.maximize_window( ) | |
quit( ) | 退出當前 driver 并且關閉所有的相關窗口 | driver.quit( ) | |
refresh( ) | 刷新當前頁面 | driver.refresh( ) | |
switch_to_active_ element( ) |
返回當前頁面唯一焦點所在的元素 | driver.switch_to_active_ element( ) |
|
switch_to_alert( ) | 把焦點切換至當前頁面彈出的警告 | driver.switch_to_alert( ) | |
switch_to_default_ centent( ) |
切換焦點至默認框架內 | driver.switch_to_default_ content( ) |
|
switch_to_frame (frame_reference) |
通過索引、名稱和網頁元素將焦點切換到指定的框架,這種方法也適用于IFRAMES | frame_reference:要切換的目標窗口的名稱、整數類型的索引或者要切換的目標框架的網頁元素 | driver.switch_to-frame (frame_reference) |
switch_to_window (window_name) |
切換焦點到指定的窗口 | window_name:要切換的目標窗口的名稱或者句柄 | driver.switch_to_window (window_name) |
implicitly_wait (time_to_wait) |
超時設置等待目標元素被找到,或者目標指令執行完成。該方法在每個session只需要調用一次 | time_to_wait:等待時間(單位為秒) | driver.implicitly_wait (time_to_wait) |
set_page_load_timeout (time_to_wait) |
設置一個頁面完全加載完成的超時等待時間 | time_to_wait:等待時間(單位為秒) | driver.set_page_load_timeout (time_to_wait) |
set_script_timeout (time_to_wait) |
設置腳本執行的超時時間,應該在execute_async_script拋出錯誤之前 | time_to_wait:等待時間(單位為秒) | driver.set_script_timeout (time_to_wait) |
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43255.html
當我們想讓 Selenium 自動地操作瀏覽器時,就必須告訴 Selenium 如何去定位某個元素或一組元素,每個元素都有著不同的標簽名和屬性值,Selenium 提供了以下8種定位元素的方式,每種方式對應了2個方法:find_element_by_( ),是用來定位單個元素的,find_elements_by_( ),是用來定位多個元素的。 通過 id 定位 通過 name 定位 通過 cla...
摘要:前面一節主要介紹了類,這一節則主要介紹類。提供了一些功能屬性和方法來實現與網頁元素的交互,這些元素主要包括文本框文本域按鈕單選框多選框表格等等。 前面一節主要介紹了 WebDriver 類,這一節則主要介紹 WebElement 類。WebElement 提供了一些功能、屬性和方法來實現與網頁元素的交互,這些元素主要包括文本框、文本域、按鈕、單選框、多選框、表格等等。 WebEleme...
摘要:注意如果上述腳本無法正常啟動瀏覽器,需要先檢查與瀏覽器的版本是否一致然后再檢查瀏覽器對應的文件是否放在的安裝目錄下,如系統的默認安裝路徑,,如果沒有請將該文件放在此目錄下,然后再次運行腳本。 第一個自動化測試腳本 腳本如下所示: # _*_ coding:utf-8 _*_ from selenium import webdriver from selenium.webdriver....
摘要:華文宋體驗證搜索結果頁面的標題是否是自動化測試百度搜索。華文宋體移除了華文宋體版本的華文宋體也就是說,華文宋體不再得到官方的支持。一、自動化測試概念1、概念java:TestNgpython:unittest pytest2、自動化測試可行性測試目的明確,需求不會頻繁的變更對于項目的自動化測試,要看項目的具體情況一個產品需要在多個環境下部署對于web GUI測試,需要測試用例在不同的瀏覽器上...
摘要:且本小白也親身經歷了整個從小白到爬蟲初入門的過程,因此就斗膽在上開一個欄目,以我的圖片爬蟲全實現過程為例,以期用更簡單清晰詳盡的方式來幫助更多小白應對更大多數的爬蟲實際問題。 前言: 一個月前,博主在學過python(一年前)、會一點網絡(能按F12)的情況下,憑著熱血和興趣,開始了pyth...
閱讀 1297·2021-11-04 16:09
閱讀 3484·2021-10-19 11:45
閱讀 2396·2021-10-11 10:59
閱讀 1010·2021-09-23 11:21
閱讀 2762·2021-09-22 10:54
閱讀 1129·2019-08-30 15:53
閱讀 2600·2019-08-30 15:53
閱讀 3477·2019-08-30 12:57