Webdriver Selenium中是否存在浏览器最大化的模式,而实际上却最小化了?

时间:2018-11-07 12:19:26

标签: python selenium webdriver

我需要Selenium中的浏览器才能使其发挥最大作用,以便我处理的网站将其视为已最大化,但是我确实希望将其最小化,以便可以在脚本执行时并行工作。简单:driver.maximize_window()只是最大化窗口。

那么,有没有办法使网站的浏览器窗口最大化,但实际上却最小化呢?

4 个答案:

答案 0 :(得分:1)

您可以尝试仅在一个小窗口中运行它,而不是最大化或最小化。

不要告诉浏览器在大小方面做任何事情。

那么你告诉硒的地方

browser.maximize_window()

删除或注释掉它,然后以这种方式运行脚本。

就是这样或使用多个屏幕。

答案 1 :(得分:1)

如果要在执行WebDriver时工作,则可以在VM中创建一个虚拟实例(例如VirtualBox或HyperV)运行测试套件。

答案 2 :(得分:1)

这里有几种方法,取决于您的需求。

首先,大多数浏览器允许在启动时设置屏幕尺寸。例如,How do I set browser width and height in Selenium WebDriver?在此处查看详细信息例如,可以使用ini文件从selenium脚本外部控制Chrome,您可以在其中设置屏幕尺寸属性,也可以通过命令行参数进行控制。有关铬的特定参数,请参见此页,例如:https://peter.sh/experiments/chromium-command-line-switches/

第二,您可以以无头模式启动浏览器并将其限制为特定大小。如果这样做,您的代码将在无头浏览器中运行,这意味着您无法在实际屏幕上看到它。请参阅众多有关该问题的stackoverflow问题,其中包括:How to configure ChromeDriver to initiate Chrome browser in Headless mode through Selenium?

第三,您可以启动一定大小的虚拟显示,并让驱动程序在所有测试中最大化浏览器。 xvfb之类的工具真是令人发指。 How do I run Selenium in Xvfb?

最后,您可以使用以所需的分辨率/ dpi设置的真实显示器。查看类似Resize display resolution using python with cross platform support

的答案

答案 3 :(得分:-1)

从网站角度看,最大化只是浏览器的大小。将浏览器大小设置为桌面的屏幕分辨率,并最小化浏览器。