python使用selenium操作瀏覽器的實(shí)現(xiàn)示例
重復(fù)的操作令手工測試苦不堪言,于是自動化測試出現(xiàn)了!作為web應(yīng)用里最出名的自動化測試工具,selenium讓web應(yīng)用的測試輕松了很多。今天我們就來簡單的介紹一下一些簡單的selenium瀏覽器操作。接下來我們就來看看python怎么操作瀏覽器的吧!
1、打開指定的網(wǎng)頁地址
我們使用selenium進(jìn)行自動化測試時,打開瀏覽器之后,第一步就是讓瀏覽器訪問我們指定的地址,可使用get方法實(shí)現(xiàn)
from selenium import webdriver driver = webdriver.Edge() driver.get('https://www.baidu.com/') # 本行用于訪問指定的地址
2、獲取當(dāng)前頁面url
我們在測試過程中,有時需要獲取當(dāng)前頁面的url以判斷是否跳轉(zhuǎn)到指定頁面,獲取頁面url的方法如下:
from selenium import webdriver driver = webdriver.Edge() driver.get('https://www.baidu.com/') url = driver.current_url # 本行用于獲取當(dāng)前頁面的url,即百度首頁地址 print(url)
3、返回按鈕
返回按鈕,也就是瀏覽器左上角的 ← 鍵,模擬點(diǎn)擊此按鈕操作如下 driver.back()
如,在百度搜索框中輸入selenium并點(diǎn)擊搜索,然后點(diǎn)擊返回按鈕,實(shí)現(xiàn)如下
from selenium import webdriver from selenium.webdriver.common.by import By import time driver = webdriver.Edge() driver.get('https://www.baidu.com/') driver.find_element(By.ID, 'kw').send_keys('selenium') #搜索框輸入selenium driver.find_element(By.ID, 'su').click() # 點(diǎn)擊百度一下 time.sleep(3) driver.back() # 返回
本段代碼表示在輸入框中輸入selenium后,再點(diǎn)擊百度一下進(jìn)行搜索,3秒后再返回百度首頁
4、前進(jìn)按鈕
前進(jìn)按鈕,相對于后退的 ← ,是瀏覽器左上角的 → 按鈕 ,操作此按鈕方法如下:
driver.forward()
如,在百度搜索框中輸入selenium并點(diǎn)擊搜索,然后點(diǎn)擊返回按鈕后再點(diǎn)擊前進(jìn)按鈕,實(shí)現(xiàn)如下
from selenium import webdriver from selenium.webdriver.common.by import By import time driver = webdriver.Edge() driver.get('https://www.baidu.com/') driver.find_element(By.ID, 'kw').send_keys('selenium') #搜索框輸入selenium driver.find_element(By.ID, 'su').click() # 點(diǎn)擊百度一下 driver.back() # 返回 #學(xué)習(xí)中遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流群:711312441 time.sleep(3) driver.forward() # 前進(jìn)
本段代碼表示在輸入框中輸入selenium后,再點(diǎn)擊百度一下進(jìn)行搜索,然后返回操作,3秒后再進(jìn)行前進(jìn)操作,最終停留在輸入selenium之后執(zhí)行搜索的結(jié)果頁面
5、刷新頁面
測試過程中,刷新頁面是經(jīng)常使用的操作,selenium進(jìn)行刷新操作方法如下
driver.refresh() 使用此方法類似于按下F5或點(diǎn)擊左上角的刷新按鈕
from selenium import webdriver driver = webdriver.Edge() driver.get('https://www.baidu.com/') driver.refresh() # 刷新頁面
本段代碼表示打開百度首頁并刷新頁面
6、獲取當(dāng)前頁面title
測試過程中,可以使用selenium獲取當(dāng)前頁面的title,方法如下: driver.title
使用selenium獲取百度首頁的title,示例如下:
from selenium import webdriver driver = webdriver.Edge() driver.get('https://www.baidu.com/') title = driver.title # 獲取當(dāng)前頁面title print(title)
以上代碼運(yùn)行后,將在控制臺輸出百度首頁的title 百度一下,你就知道
7、窗口大小操作
常用的窗口操作有設(shè)置窗口大小、最大化窗口、最小化窗口、全屏窗口
① 設(shè)置窗口大小 driver.set_window_size(1920, 1080)
② 最大化窗口 driver.maximize_window()
③ 最小化窗口 driver.minimize_window() 最小化窗口是selenium4的新功能,selenium3不能使用此方法
④ 全屏窗口,相當(dāng)于大多數(shù)瀏覽器中按下F11 driver.fullscreen_window()
示例代碼:
from selenium import webdriver driver = webdriver.Edge() driver.get('https://www.baidu.com/') driver.set_window_size(1920, 1080) # 設(shè)置窗口大小 1920*1080 driver.minimize_window() # 最小化窗口 driver.maximize_window() # 最大化窗口 driver.fullscreen_window() # 全屏窗口
本段代碼打開百度首頁后,先將瀏覽器窗口大小設(shè)置為1920*1080,然后依次最小化窗口、最大化窗口、全屏窗口,實(shí)際進(jìn)行測試時,需要根據(jù)需要進(jìn)行設(shè)置
8、退出
測試執(zhí)行完成后,需要退出瀏覽器,否則多次運(yùn)行測試會導(dǎo)致系統(tǒng)殘留大量的驅(qū)動進(jìn)程,這些進(jìn)程會消耗計(jì)算機(jī)資源,導(dǎo)致系統(tǒng)越來越卡,所以養(yǎng)成測試完成后關(guān)閉瀏覽器是個良好習(xí)慣
退出瀏覽器操作如下:
from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Edge() driver.get('https://www.baidu.com/') driver.find_element(By.ID, 'kw').send_keys('selenium') #搜索框輸入selenium driver.find_element(By.ID, 'su').click() # 點(diǎn)擊百度一下 driver.quit() # 退出瀏覽器
本段代碼表示打開百度首頁,再輸入框中 輸入selenium后點(diǎn)擊百度一下,完成搜索后退出瀏覽器
到此這篇關(guān)于python使用selenium操作瀏覽器的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)python selenium操作瀏覽器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python 3.8中實(shí)現(xiàn)functools.cached_property功能
這篇文章主要介紹了Python 3.8中實(shí)現(xiàn)functools.cached_property功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05使用Pandas實(shí)現(xiàn)數(shù)據(jù)的清理的入門詳解
數(shù)據(jù)清理是數(shù)據(jù)分析過程中的關(guān)鍵步驟,它涉及識別缺失值、重復(fù)行、異常值和不正確的數(shù)據(jù)類型,本文將介紹6個經(jīng)常使用的數(shù)據(jù)清理操作,希望對大家有所幫助2023-08-08Selenium?4.2.0?標(biāo)簽定位8種方法詳解
這篇文章主要介紹了Selenium?4.2.0?標(biāo)簽定位8種方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06Tensor 和 NumPy 相互轉(zhuǎn)換的實(shí)現(xiàn)
本文主要介紹了Tensor 和 NumPy 相互轉(zhuǎn)換的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02詳解python模塊pychartdir安裝及導(dǎo)入問題
這篇文章主要介紹了python模塊pychartdir導(dǎo)入問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10Python實(shí)現(xiàn)自定義讀寫分離代碼實(shí)例
這篇文章主要介紹了Python實(shí)現(xiàn)自定義讀寫分離代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-11-11