# 🎠[Playwright](https://playwright.dev) for Python [![PyPI version](https://badge.fury.io/py/playwright.svg)](https://pypi.python.org/pypi/playwright/) [![Anaconda version](https://img.shields.io/conda/v/microsoft/playwright)](https://anaconda.org/Microsoft/playwright) [![Join Discord](https://img.shields.io/badge/join-discord-infomational)](https://aka.ms/playwright/discord)
Playwright is a Python library to automate [Chromium](https://www.chromium.org/Home), [Firefox](https://www.mozilla.org/en-US/firefox/new/) and [WebKit](https://webkit.org/) browsers with a single API. Playwright delivers automation that is **ever-green**, **capable**, **reliable** and **fast**. [See how Playwright is better](https://playwright.dev/python).
| | Linux | macOS | Windows |
| :--- | :---: | :---: | :---: |
| Chromium <!-- GEN:chromium-version -->130.0.6723.31<!-- GEN:stop --> | ✅ | ✅ | ✅ |
| WebKit <!-- GEN:webkit-version -->18.0<!-- GEN:stop --> | ✅ | ✅ | ✅ |
| Firefox <!-- GEN:firefox-version -->131.0<!-- GEN:stop --> | ✅ | ✅ | ✅ |
## Documentation
[https://playwright.dev/python/docs/intro](https://playwright.dev/python/docs/intro)
## API Reference
[https://playwright.dev/python/docs/api/class-playwright](https://playwright.dev/python/docs/api/class-playwright)
## Example
```py
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()
```
```py
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())
```
## Other languages
More comfortable in another programming language? [Playwright](https://playwright.dev) is also available in
- [Node.js (JavaScript / TypeScript)](https://playwright.dev/docs/intro),
- [.NET](https://playwright.dev/dotnet/docs/intro),
- [Java](https://playwright.dev/java/docs/intro).
Raw data
{
"_id": null,
"home_page": "https://github.com/Microsoft/playwright-python",
"name": "playwright",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "Microsoft Corporation",
"author_email": null,
"download_url": null,
"platform": null,
"description": "# \ud83c\udfad [Playwright](https://playwright.dev) for Python [![PyPI version](https://badge.fury.io/py/playwright.svg)](https://pypi.python.org/pypi/playwright/) [![Anaconda version](https://img.shields.io/conda/v/microsoft/playwright)](https://anaconda.org/Microsoft/playwright) [![Join Discord](https://img.shields.io/badge/join-discord-infomational)](https://aka.ms/playwright/discord)\n\nPlaywright is a Python library to automate [Chromium](https://www.chromium.org/Home), [Firefox](https://www.mozilla.org/en-US/firefox/new/) and [WebKit](https://webkit.org/) browsers with a single API. Playwright delivers automation that is **ever-green**, **capable**, **reliable** and **fast**. [See how Playwright is better](https://playwright.dev/python).\n\n| | Linux | macOS | Windows |\n| :--- | :---: | :---: | :---: |\n| Chromium <!-- GEN:chromium-version -->130.0.6723.31<!-- GEN:stop --> | \u2705 | \u2705 | \u2705 |\n| WebKit <!-- GEN:webkit-version -->18.0<!-- GEN:stop --> | \u2705 | \u2705 | \u2705 |\n| Firefox <!-- GEN:firefox-version -->131.0<!-- GEN:stop --> | \u2705 | \u2705 | \u2705 |\n\n## Documentation\n\n[https://playwright.dev/python/docs/intro](https://playwright.dev/python/docs/intro)\n\n## API Reference\n\n[https://playwright.dev/python/docs/api/class-playwright](https://playwright.dev/python/docs/api/class-playwright)\n\n## Example\n\n```py\nfrom playwright.sync_api import sync_playwright\n\nwith sync_playwright() as p:\n for browser_type in [p.chromium, p.firefox, p.webkit]:\n browser = browser_type.launch()\n page = browser.new_page()\n page.goto('http://playwright.dev')\n page.screenshot(path=f'example-{browser_type.name}.png')\n browser.close()\n```\n\n```py\nimport asyncio\nfrom playwright.async_api import async_playwright\n\nasync def main():\n async with async_playwright() as p:\n for browser_type in [p.chromium, p.firefox, p.webkit]:\n browser = await browser_type.launch()\n page = await browser.new_page()\n await page.goto('http://playwright.dev')\n await page.screenshot(path=f'example-{browser_type.name}.png')\n await browser.close()\n\nasyncio.run(main())\n```\n\n## Other languages\n\nMore comfortable in another programming language? [Playwright](https://playwright.dev) is also available in\n- [Node.js (JavaScript / TypeScript)](https://playwright.dev/docs/intro),\n- [.NET](https://playwright.dev/dotnet/docs/intro),\n- [Java](https://playwright.dev/java/docs/intro).\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "A high-level API to automate web browsers",
"version": "1.48.0",
"project_urls": {
"Homepage": "https://github.com/Microsoft/playwright-python",
"Release notes": "https://github.com/microsoft/playwright-python/releases"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "b8410166d58c3eeae72377cbcd4cbed84b36cddc551a2b094bf7984198aafb79",
"md5": "a659217e9ece1641356d67f4a355c7d7",
"sha256": "082bce2739f1078acc7d0734da8cc0e23eb91b7fae553f3316d733276f09a6b1"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-macosx_10_13_x86_64.whl",
"has_sig": false,
"md5_digest": "a659217e9ece1641356d67f4a355c7d7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 34989519,
"upload_time": "2024-10-21T13:52:49",
"upload_time_iso_8601": "2024-10-21T13:52:49.182944Z",
"url": "https://files.pythonhosted.org/packages/b8/41/0166d58c3eeae72377cbcd4cbed84b36cddc551a2b094bf7984198aafb79/playwright-1.48.0-py3-none-macosx_10_13_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6441d77c47743800fbeb86657611e651e56a17cbb4ebfefa1da0318dc39092df",
"md5": "604356b05bee3d18d9d488bef7689a72",
"sha256": "7da2eb51a19c7f3b523e9faa9d98e7af92e52eb983a099979ea79c9668e3cbf7"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "604356b05bee3d18d9d488bef7689a72",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 33302881,
"upload_time": "2024-10-21T13:52:53",
"upload_time_iso_8601": "2024-10-21T13:52:53.176836Z",
"url": "https://files.pythonhosted.org/packages/64/41/d77c47743800fbeb86657611e651e56a17cbb4ebfefa1da0318dc39092df/playwright-1.48.0-py3-none-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b0f2f184f613e6f496ed78e7808ac729900257567d2c1a7930e61026f0e48a5f",
"md5": "376e74b15942e485fb45d97ed9fa7cb1",
"sha256": "115b988d1da322358b77bc3bf2d3cc90f8c881e691461538e7df91614c4833c9"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-macosx_11_0_universal2.whl",
"has_sig": false,
"md5_digest": "376e74b15942e485fb45d97ed9fa7cb1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 34989518,
"upload_time": "2024-10-21T13:52:56",
"upload_time_iso_8601": "2024-10-21T13:52:56.672699Z",
"url": "https://files.pythonhosted.org/packages/b0/f2/f184f613e6f496ed78e7808ac729900257567d2c1a7930e61026f0e48a5f/playwright-1.48.0-py3-none-macosx_11_0_universal2.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f90c8cde1a86a9a7449a0ba95197f42156198083be1749b717831fba16ab2b5f",
"md5": "36f4a653b68ab7898111b69a4fc4e07b",
"sha256": "8dabb80e62f667fe2640a8b694e26a7b884c0b4803f7514a3954fc849126227b"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-manylinux1_x86_64.whl",
"has_sig": false,
"md5_digest": "36f4a653b68ab7898111b69a4fc4e07b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 38171658,
"upload_time": "2024-10-21T13:53:00",
"upload_time_iso_8601": "2024-10-21T13:53:00.341567Z",
"url": "https://files.pythonhosted.org/packages/f9/0c/8cde1a86a9a7449a0ba95197f42156198083be1749b717831fba16ab2b5f/playwright-1.48.0-py3-none-manylinux1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "31dc121be574222fc74d12ac42921728fb6ba8ac17264a1fdab1993263389082",
"md5": "4dd1e19feb30d326d1c5c8d55b70756c",
"sha256": "8ff8303409ebed76bed4c3d655340320b768817d900ba208b394fdd7d7939a5c"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "4dd1e19feb30d326d1c5c8d55b70756c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 37919223,
"upload_time": "2024-10-21T13:53:04",
"upload_time_iso_8601": "2024-10-21T13:53:04.429619Z",
"url": "https://files.pythonhosted.org/packages/31/dc/121be574222fc74d12ac42921728fb6ba8ac17264a1fdab1993263389082/playwright-1.48.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3ac5ff02a780c76e9cf20296e2d1743bb42b1e81d62535802eb6d67b1b6b7b47",
"md5": "4c7735941a69e1f673d6ee3192bb643e",
"sha256": "85598c360c590076d4f435525be991246d74a905b654ac19d26eab7ed9b98b2d"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-win32.whl",
"has_sig": false,
"md5_digest": "4c7735941a69e1f673d6ee3192bb643e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 29983089,
"upload_time": "2024-10-21T13:53:08",
"upload_time_iso_8601": "2024-10-21T13:53:08.548855Z",
"url": "https://files.pythonhosted.org/packages/3a/c5/ff02a780c76e9cf20296e2d1743bb42b1e81d62535802eb6d67b1b6b7b47/playwright-1.48.0-py3-none-win32.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4588b6459c93a8bc0b96e7a33b6744bbef2740a0b78b0534542a037d220427f0",
"md5": "5fa1d540e857b9cfde8f6dc3e82ef878",
"sha256": "e0e87b0c4dc8fce83c725dd851aec37bc4e882bb225ec8a96bd83cf32d4f1623"
},
"downloads": -1,
"filename": "playwright-1.48.0-py3-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "5fa1d540e857b9cfde8f6dc3e82ef878",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 29983099,
"upload_time": "2024-10-21T13:53:12",
"upload_time_iso_8601": "2024-10-21T13:53:12.529292Z",
"url": "https://files.pythonhosted.org/packages/45/88/b6459c93a8bc0b96e7a33b6744bbef2740a0b78b0534542a037d220427f0/playwright-1.48.0-py3-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-21 13:52:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Microsoft",
"github_project": "playwright-python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "playwright"
}