Manipulating browser (window) size using Splinter

2020-07-07 08:29发布

I am trying to use the Firefox driver for Splinter to test some responsive design.

Naturally, this requires me to resize the browser window. I can't find anything at all about browser resizing in the documentation.

How can I do this?

from splinter import Browser
with Browser() as browser:
    # How do I set the browser size?

1条回答
时光不老,我们不散
2楼-- · 2020-07-07 09:04

Just do this:

browser.driver.set_window_size(640, 480)

The Splinter API doesn't seem to directly support this - or at least not yet. The generic API docs, as well as the docs for each specific browser's driver, currently make no mention of anything related to window size). However, a seemingly undocumented feature is that you're able to access the underlying Selenium webdriver instance of a Splinter webdriver instance through its .driver property:

>>> from splinter import Browser
>>> browser = Browser()
>>> browser
<splinter.driver.webdriver.firefox.WebDriver object at 0x7fac66d93a10>
>>> browser.driver
<selenium.webdriver.firefox.webdriver.WebDriver object at 0x1fbf3d0>

This allows us to use any Selenium features that don't have wrappers in the Splinter API, like resizing the browser with the set_window_size method.

查看更多
登录 后发表回答