selenium瀏覽器操作篇:瀏覽器的打開與窗口大小


我們知道,通過實例化一個WebDriver,基於WebDriver wire協議通過遠程server就可以實現瀏覽器的操作。

今天要說的就是瀏覽器最基本的操作(基於python):瀏覽器打開與窗口大小控制。

1、打開瀏覽器
在python中,使用selenium需先導入webdriver,然后實例化WebDriver類。
導入:from selenium import webdriver
實例化WebDriver類:webdriver.Firefox()
如下圖代碼所示:

from selenium import webdriver

driver = webdriver.Firefox()

這樣,我們就可以打開Firefox瀏覽器了。

2、打開網址
打開瀏覽器后,WebDriver實例對象調用get()方法並輸入url值即可打開指定url
如driver.get('https://www.baidu.com)
如下圖:

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://www.baidu.com")

這樣我們就打開了百度首頁

3、最大化和最小化瀏覽器
WebDriver實例對象調用maximize_window()即可將瀏覽器最大化,瀏覽器最小化用minimize_window()

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://www.baidu.com")
driver.maximize_window()
driver.minimize_window()

這樣我們就可以將瀏覽器窗口最大化和最小化了。

4、按尺寸打開瀏覽器
如果想按照一定的尺寸大小打開瀏覽器,則使用set_window_size()方法將瀏覽器設置一個指定大小

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://www.baidu.com")
driver.minimize_window()
driver.maximize_window()
driver.set_window_size(100, 50)

我們來看看set_window_size()這個方法:

   def set_window_size(self, width, height, windowHandle='current'):
        """
        Sets the width and height of the current window. (window.resizeTo)

        :Args:
         - width: the width in pixels to set the window to
         - height: the height in pixels to set the window to

        :Usage:
            driver.set_window_size(800,600)
        """
        if self.w3c:
            if windowHandle != 'current':
                warnings.warn("Only 'current' window is supported for W3C compatibile browsers.")
            self.set_window_rect(width=int(width), height=int(height))
        else:
            self.execute(Command.SET_WINDOW_SIZE, {
                'width': int(width),
                'height': int(height),
                'windowHandle': windowHandle})

此方法有三個參數:width,height,以及windowHandle
width:瀏覽器的寬度像素點
height:瀏覽器的高度像素點
windowHandle:瀏覽器窗口句柄,默認當前窗口,如果需要指定窗口,則傳入該窗口handle即可。

5、獲取窗口尺寸大小
若想獲得瀏覽器窗口尺寸大小,可使用get_window_size()方法。

from selenium import webdriver

driver = webdriver.Firefox()
driver.get("https://www.baidu.com")
driver.minimize_window()
driver.maximize_window()
size = driver.get_window_size()

 

get_window_size()方法返回值類型為字典

{'width': 1295, 'height': 695}
<class 'dict'>

我們可以看到,該字典有兩個鍵值對,分別對應width(寬)和高(height)
我們再來看看get_window_size()這個方法:

    def get_window_size(self, windowHandle='current'):
        """
        Gets the width and height of the current window.

        :Usage:
            driver.get_window_size()
        """
        command = Command.GET_WINDOW_SIZE
        if self.w3c:
            if windowHandle != 'current':
                warnings.warn("Only 'current' window is supported for W3C compatibile browsers.")
            size = self.get_window_rect()
        else:
            size = self.execute(command, {'windowHandle': windowHandle})

        if size.get('value', None) is not None:
            size = size['value']

        return {k: size[k] for k in ('width', 'height')}

該方法只有一個參數:windowHandle,且默認為當前窗口





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM