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ī)資源,導(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)文章
Django 解決上傳文件時,request.FILES為空的問題
這篇文章主要介紹了Django 解決上傳文件時,request.FILES為空的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
關(guān)于Python 實(shí)現(xiàn)tuple和list的轉(zhuǎn)換問題
這篇文章主要介紹了Python 實(shí)現(xiàn)tuple和list的轉(zhuǎn)換,文中介紹了list(列表)和tuple(元組)共同點(diǎn)和區(qū)別,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05
pip安裝指定版本的tensorflow的實(shí)現(xiàn)
本文介紹了如何使用pip安裝指定版本的TensorFlow,包括CPU版本和GPU版本的安裝方法,同時,文中也提到了使用阿里國內(nèi)鏡像源加速下載的方法,以及在安裝GPU版本時需要檢查CUDA和cuDNN的兼容性的注意事項(xiàng),感興趣的可以了解一下2024-10-10
python常規(guī)方法實(shí)現(xiàn)數(shù)組的全排列
這篇文章主要介紹了python常規(guī)方法實(shí)現(xiàn)數(shù)組的全排列,實(shí)例分析了全排列的概念及Python常規(guī)實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-03-03
Python + Skills 架構(gòu)實(shí)現(xiàn)從理論到實(shí)踐
Skills架構(gòu)是一種模塊化設(shè)計模式,它將復(fù)雜的業(yè)務(wù)流程分解為一系列獨(dú)立的、可重用的功能單元(稱為"技能"),本文給大家介紹Python + Skills 架構(gòu)實(shí)現(xiàn)從理論到實(shí)踐,感興趣的朋友跟隨小編一起看看吧2026-03-03
使用Python對mongo數(shù)據(jù)庫中字符串型正負(fù)數(shù)值比較大小
這篇文章主要介紹了使用Python對mongo數(shù)據(jù)庫中字符串型正負(fù)數(shù)值比較大小,2023-04-04

