Python Playwright开始最大化窗口

inb24sb2  于 2023-04-10  发布在  Python
关注(0)|答案(3)|浏览(649)

我在Python中启动Playwright时遇到了一个问题。我发现了一些其他语言的文章,但在Python中不起作用,在官方文档中也没有写过关于在Python中最大化窗口的文章。
我试过browser = p.chromium.launch(headless=False, args=["--start-maximized"])
它开始最大化,然后自动恢复到默认的小窗口大小。
有什么想法吗?谢谢

kb5ga3dv

kb5ga3dv1#

我刚刚找到了答案:
我还需要设置以下内容,它可以工作:browser.new_context(no_viewport=True)

jgovgodb

jgovgodb2#

您可以创建一个conftest.py并定义:

def page(playwright: Playwright, scope="module"):
    app_data_path = os.getenv("LOCALAPPDATA")
    chromium_path = "ms-playwright\\chromium-1028\\chrome-win"
    chromium_path = os.path.join(app_data_path, chromium_path)
    chrome = playwright.chromium\
        .launch_persistent_context(chromium_path, headless=False, args=["--start-maximised"], no_viewport=True)
    page = chrome.new_page()
    return page

然后,将能够手动最大化窗口,不会恢复回来

6ojccjat

6ojccjat3#

我使用playwrightpytest-playwright

def test_foo(playwright):
    browser = playwright.chromium.launch(headless=False, args=["--start-maximized"])
    # create a new incognito browser context.
    context = browser.new_context(no_viewport=True)
    # create a new page in a pristine context.
    page = context.new_page()
    page.goto("https://example.com")

使用pytest .运行测试,无需指定浏览器和headless参数。使用new_context,它不会与其他浏览器上下文共享cookie/缓存,因此我们可以分离测试运行

相关问题