π Playwright for Python
![Join Discord](https://camo.githubusercontent.com/f87eb1e3910771bd8a7057a9b067f1502d500bafbfbb5b965ff05745767717d6/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6a6f696e2d646973636f72642d696e666f6d6174696f6e616c)
Playwright is a Python library to automate Chromium, Firefox and WebKit browsers with a single API. Playwright delivers automation that is ever-green, capable, reliable and fast. See how Playwright is better.
Linux | macOS | Windows | |
---|---|---|---|
Chromium 121.0.6167.57 | β | β | β |
WebKit 17.4 | β | β | β |
Firefox 121.0 | β | β | β |
https://playwright.dev/python/docs/intro
https://playwright.dev/python/docs/api/class-playwright
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
for browser_type in [p.chromium, p.firefox, p.webkit]:
browser = browser_type.launch()
page = browser.new_page()
page.goto('http://playwright.dev')
page.screenshot(path=f'example-{browser_type.name}.png')
browser.close()
import asyncio
from playwright.async_api import async_playwright
async def main():
async with async_playwright() as p:
for browser_type in [p.chromium, p.firefox, p.webkit]:
browser = await browser_type.launch()
page = await browser.new_page()
await page.goto('http://playwright.dev')
await page.screenshot(path=f'example-{browser_type.name}.png')
await browser.close()
asyncio.run(main())
More comfortable in another programming language? Playwright is also available in