欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Selenium控制瀏覽器常見操作示例

 更新時(shí)間:2018年08月13日 09:49:11   作者:噴跑的豆子  
這篇文章主要介紹了Selenium控制瀏覽器常見操作,結(jié)合實(shí)例形式分析了Selenium針對瀏覽器的窗口大小控制、前進(jìn)、后退、刷新、截屏等相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Selenium控制瀏覽器常見操作。分享給大家供大家參考,具體如下:

Selenium是一個(gè)用于Web應(yīng)用程序測試的工具。Selenium測試直接運(yùn)行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。這個(gè)工具的主要功能包括:測試與瀏覽器的兼容性——測試你的應(yīng)用程序看是否能夠很好得工作在不同瀏覽器和操作系統(tǒng)之上。測試系統(tǒng)功能——創(chuàng)建回歸測試檢驗(yàn)軟件功能和用戶需求。支持自動錄制動作和自動生成 .Net、Java、Perl等不同語言的測試腳本。

有時(shí)候我們希望能讓瀏覽器以某種尺寸打開,讓訪問頁面在這種尺寸下運(yùn)行,或者控制瀏覽器進(jìn)行后退與前進(jìn)操作等等

控制瀏覽器窗口大小

有時(shí)我們需要對移動站點(diǎn)的樣式進(jìn)行評估,可是瀏覽器的正常尺寸很顯然是不合適的, 此時(shí)我們會想將瀏覽器設(shè)置成移動端大小就可以了。WebDriver提供了set_window_size()方法來設(shè)置瀏覽器大?。?/p>

from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
driver.set_window_size(480,800)

除了set_window_size方法來設(shè)置瀏覽器的大小,WebDriver還提供了一個(gè)設(shè)置瀏覽器全屏顯示的方法maximize_window(),其用法與set_window_size()相同,不同的是maximize_window()無需傳遞參數(shù):

from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
driver.maximize_window()

值得注意的是,在定位元素的時(shí)候,有些網(wǎng)頁如果不是全屏展示時(shí),將由可能定位不準(zhǔn)?。?!

控制瀏覽器前進(jìn)與后退

在使用瀏覽器瀏覽網(wǎng)頁時(shí),瀏覽器提供了前進(jìn)和后退的按鈕,可以方便的在瀏覽過的網(wǎng)頁之間進(jìn)行切換,WebDriver也提供了相應(yīng)的back()forward()方法來模擬后退和前進(jìn)按鈕,下面舉個(gè)簡單的栗子來演示這兩個(gè)方法的使用:

from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com')
driver.get('https://blog.csdn.net/y472360651')
# 后退至百度頁面
driver.back()
# 前進(jìn)至博客頁面
driver.forward()

刷新頁面

有時(shí)候需要手動刷新(F5)頁面,WebDriver也提供了相應(yīng)的方法refresh(),使用起來很簡單,如下:

driver.refresh()

窗口截屏

自動化用例是由程序去執(zhí)行的,因此有些時(shí)候打印的錯(cuò)誤信息并不十分明確。如果在腳本執(zhí)行出錯(cuò)的時(shí)候能夠?qū)Ξ?dāng)前窗口截圖保存,那么通過圖片就可以非常直觀的看出出錯(cuò)的原因。WebDriver提供了截圖函數(shù)get_screenshot_as_file()來截取當(dāng)前窗口:

from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get("https://www.baidu.com/")
driver.get_screenshot_as_file("abc.png")

值得注意的是,當(dāng)使用窗口截屏功能時(shí),圖片的擴(kuò)展名必須是png!!!

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python URL操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python腳本替換指定行實(shí)現(xiàn)步驟

    python腳本替換指定行實(shí)現(xiàn)步驟

    這篇文章主要介紹了 python腳本替換指定行實(shí)現(xiàn)步驟的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • Python面向?qū)ο笾畠?nèi)置函數(shù)相關(guān)知識總結(jié)

    Python面向?qū)ο笾畠?nèi)置函數(shù)相關(guān)知識總結(jié)

    本次要總結(jié)的的內(nèi)置函數(shù)共8個(gè),他們都跟面向?qū)ο蟮闹R相關(guān),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • 一行Python代碼制作動態(tài)二維碼的實(shí)現(xiàn)

    一行Python代碼制作動態(tài)二維碼的實(shí)現(xiàn)

    這篇文章主要介紹了一行Python代碼制作動態(tài)二維碼的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • python點(diǎn)云地面點(diǎn)濾波(Progressive Morphological Filter)算法介紹(PCL庫)

    python點(diǎn)云地面點(diǎn)濾波(Progressive Morphological Filter)算法介紹(PCL庫)

    這篇文章主要介紹了python點(diǎn)云地面點(diǎn)濾波(Progressive Morphological Filter)算法介紹(PCL庫),了解膨脹/腐蝕這兩個(gè)基礎(chǔ)操作,可以通過對其進(jìn)行簡單組合來形成開/閉操作,需要的朋友可以參考下
    2021-08-08
  • python實(shí)現(xiàn)列表中由數(shù)值查到索引的方法

    python實(shí)現(xiàn)列表中由數(shù)值查到索引的方法

    今天小編就為大家分享一篇python實(shí)現(xiàn)列表中由數(shù)值查到索引的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python+numpy實(shí)現(xiàn)的基本矩陣操作示例

    python+numpy實(shí)現(xiàn)的基本矩陣操作示例

    這篇文章主要介紹了python+numpy實(shí)現(xiàn)的基本矩陣操作,結(jié)合實(shí)例形式分析了Python使用numpy模塊針對矩陣進(jìn)行創(chuàng)建、增刪查改、索引、運(yùn)算相關(guān)操作實(shí)現(xiàn)技巧,注釋中包含有詳細(xì)的說明,需要的朋友可以參考下
    2019-07-07
  • Python中append淺拷貝機(jī)制詳解

    Python中append淺拷貝機(jī)制詳解

    在 Python 中,對象賦值實(shí)際上是對象的引用。當(dāng)創(chuàng)建一個(gè)對象,然后把它賦給另一個(gè)變量的時(shí)候,Python 并沒有拷貝這個(gè)對象,而只是拷貝了這個(gè)對象的引用,我們稱之為淺拷貝,這篇文章主要介紹了Python中append淺拷貝機(jī)制,需要的朋友可以參考下
    2023-02-02
  • 使用jupyter notebook運(yùn)行python和R的步驟

    使用jupyter notebook運(yùn)行python和R的步驟

    這篇文章主要介紹了使用jupyter notebook運(yùn)行python和R的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 一文帶你了解Python中的枚舉(enum)

    一文帶你了解Python中的枚舉(enum)

    這篇文章一文帶你了解Python中的枚舉(enum),在Python中,枚舉和我們在對象中定義的類變量時(shí)一樣的,每一個(gè)類變量就是一個(gè)枚舉項(xiàng),需要的朋友可以參考下
    2023-04-04
  • python神經(jīng)網(wǎng)絡(luò)TensorFlow簡介常用基本操作教程

    python神經(jīng)網(wǎng)絡(luò)TensorFlow簡介常用基本操作教程

    這篇文章主要介紹了python神經(jīng)網(wǎng)絡(luò)入門TensorFlow簡介常用基本操作教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11

最新評論