Download Latest Version v1.61.0 source code.tar.gz (1.4 MB)
Email in envelope

Get an email when there's a new version of Playwright for Python

Home / v1.61.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-06-29 3.3 kB
v1.61.0 source code.tar.gz 2026-06-29 1.4 MB
v1.61.0 source code.zip 2026-06-29 1.7 MB
Totals: 3 Items   3.1 MB 2

🔑 WebAuthn passkeys

New Credentials virtual authenticator, available via browserContext.credentials (playwright.dev), lets tests register passkeys and answer navigator.credentials.create() / navigator.credentials.get() ceremonies in the page — no real hardware key required, works in all browsers:

:::python
context = browser.new_context()

# Seed a passkey your backend provisioned for a test user.
context.credentials.create("example.com",
    id=credential_id,
    user_handle=user_handle,
    private_key=private_key,
    public_key=public_key,
)
context.credentials.install()

page = context.new_page()
page.goto("https://example.com/login")
# The page's navigator.credentials.get() is answered with the seeded passkey.

You can also let the app register a passkey once in a setup test, read it back with credentials.get() (playwright.dev), and seed it into later tests — see Credentials for details.

🗃️ Web Storage

New WebStorage API, available via page.localStorage (playwright.dev) and page.sessionStorage (playwright.dev), reads and writes the page's storage for the current origin:

:::python
page.local_storage.set_item("token", "abc")
token = page.local_storage.get_item("token")
items = page.session_storage.items()

New APIs

🛠️ Other improvements

  • Playwright now supports Ubuntu 26.04.
  • HAR and trace recordings now include WebSocket requests.

Browser Versions

  • Chromium 149.0.7827.55
  • Mozilla Firefox 151.0
  • WebKit 26.5

This version was also tested against the following stable channels:

  • Google Chrome 149
  • Microsoft Edge 149
Source: README.md, updated 2026-06-29