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