如何使用 webDriver (python) 在 chrome 中最大化窗口

Posted

技术标签:

【中文标题】如何使用 webDriver (python) 在 chrome 中最大化窗口【英文标题】:How to Maximize window in chrome using webDriver (python) 【发布时间】:2012-08-26 01:28:11 【问题描述】:

有没有办法使用 python selenium WebDriver 最大化 chrome 浏览器窗口?

注意:我使用的是 Chrome 驱动程序 23.0 对此的任何解决方案将不胜感激!

【问题讨论】:

【参考方案1】:

这对我有用

driver.maximize_window()
driver.get(url)

【讨论】:

【参考方案2】:

试试这个,在windows平台上测试过,效果很好:

from selenium import webdriver
browser = webdriver.Chrome('C:\\Users\\yeivic\\Downloads\\chromedriver')
browser.fullscreen_window()
browser.get('http://google.com/')

【讨论】:

【参考方案3】:

这适用于我,Mac OS Sierra 使用 Python,

options = webdriver.ChromeOptions()
options.add_argument("--kiosk")
driver = webdriver.Chrome(chrome_options=options)

【讨论】:

【参考方案4】:

根据 Janek 的回答,这对我有用(Linux):

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument("--start-maximized")

driver = webdriver.Chrome(chrome_options=options)

【讨论】:

这在 Linux 上起初对我不起作用,但用 sudo apt install chromium-chromedriver 更新了 Chrome 驱动程序,然后它就起作用了。 webdriver.Chrome(options=options)【参考方案5】:

我执行以下操作:

from selenium import webdriver
browser = webdriver.Chrome('C:\chromedriver.exe')
browser.maximize_window()

【讨论】:

【参考方案6】:

试试

ChromeOptions options = new ChromeOptions();
options.addArguments("--start-fullscreen");

【讨论】:

虽然此代码可能会回答问题,但提供有关它如何和/或为什么解决问题的额外上下文将提高​​答案的长期价值。 问题是专门针对 Python 的【参考方案7】:

对于 MAC 或 Linux:

ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--kiosk");
driver = new ChromeDriver(chromeOptions);

对于 Windows:

ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--start-maximized");
driver = new ChromeDriver(chromeOptions);

【讨论】:

问题是专门针对python的。 --kiosk 是唯一一个在 Mac 上为我工作的。谢谢。 请记住,一旦使用--kiosk,尝试更改窗口大小将导致驱动程序崩溃,例如(python):opts = webdriver.ChromeOptions(); opts.add_argument('--kiosk'); driver = ChromeDriver(chrome_options=opts); driver.set_window_size(800, 600)。全屏或窗口。【参考方案8】:

您可以使用 ChromeOptions 并设置合适的参数:

options = ChromeOptions()
options.add_argument("--start-maximized")
driver = ChromeDriver(options)

【讨论】:

不适合我 - 窗口快照显示大小仅为 800x600 @NamGVU 在执行测试时检查实际屏幕分辨率是多少 - 最大尺寸是分辨率的尺寸。前段时间我遇到了这个问题,因为测试是由作为服务执行的进程运行的。这导致进程在会话 0 中运行,该会话在屏幕分辨率方面的功能有限。运行不在服务中的测试可以解决这个问题。 我在ubuntu服务器上运行它;所以我猜Xvfb设置的屏幕尺寸。谢谢指出。 现在是 2017/12/15。 driver.fullscreen_window() 工作。 driver.maximize_window() 是更舒适的函数,可与 python 中的 selenium chrome driver 配合使用。【参考方案9】:

没有什么对我有用,除了:

driver.set_window_size(1024, 600)
driver.maximize_window()

我通过检查 selenium/webdriver/remote/webdriver.py 发现了这一点。我从来没有找到任何有用的文档,但阅读代码的效果是有限的。

【讨论】:

这是一个比其他答案更好的答案,因为它支持所有浏览器,而不仅仅是 Chrome。 实际上不需要先设置窗口大小。 对我来说,maximize_window 没有效果。不做set_window_size 将窗口保持在800x600,set_window_size(1920, 1080) 在调用maximize_window 之前和不调用maximize_window 时使窗口大小为1920x1080。 fullscreen_window 导致我的代码挂起。我正在使用带有 options.add_argument("--headless") 的 Chrome。【参考方案10】:

试试这个:

driver.manage().window().maximize();

【讨论】:

我正在使用 driver.window_maximize()。但它不适用于单独的 chrome 浏览器。 AttributeError: 'WebDriver' 对象没有属性 'manage' 是的,这个答案很旧。

以上是关于如何使用 webDriver (python) 在 chrome 中最大化窗口的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Selenium Webdriver Python 3 中使用 Chrome 配置文件

如何在 Python 中使用 Selenium WebDriver 获取文本

如何在python中使用Selenium WebDriver获取整个网页源[重复]

如何使用Python避免Selenium Webdriver中的SSL认证错误?

如何使用 python Selenium webdriver 滚动加载在网页中的 PDF?

如何同时运行多个webdriver python程序?