Files
opensandbox-group--opensandbox/docs/examples/playwright.md
T
wehub-resource-sync e0e362d700
SDK Tests / Python SDK Tests (sandbox) (push) Blocked by required conditions
SDK Tests / CLI Quality (push) Blocked by required conditions
SDK Tests / CLI Tests (push) Blocked by required conditions
SDK Tests / Python SDK Quality (code-interpreter) (push) Blocked by required conditions
SDK Tests / Python SDK Quality (sandbox) (push) Blocked by required conditions
SDK Tests / Python SDK Tests (code-interpreter) (push) Blocked by required conditions
SDK Tests / JavaScript SDK Quality And Tests (code-interpreter) (push) Blocked by required conditions
SDK Tests / JavaScript SDK Quality And Tests (sandbox) (push) Blocked by required conditions
Deploy Docs Pages / build (push) Waiting to run
Deploy Docs Pages / deploy (push) Blocked by required conditions
Real E2E Tests / Python E2E (docker bridge) (push) Blocked by required conditions
Real E2E Tests / Java E2E (docker bridge) (push) Blocked by required conditions
Real E2E Tests / JavaScript E2E (docker bridge) (push) Blocked by required conditions
Real E2E Tests / C# E2E (docker bridge) (push) Blocked by required conditions
Real E2E Tests / Go E2E (docker bridge) (push) Blocked by required conditions
Real E2E Tests / Real E2E CI (push) Blocked by required conditions
SDK Tests / Kotlin SDK Quality And Tests (sandbox) (push) Blocked by required conditions
SDK Tests / Kotlin SDK Quality And Tests (code-interpreter) (push) Blocked by required conditions
SDK Tests / C# SDK Quality And Tests (code-interpreter) (push) Blocked by required conditions
SDK Tests / C# SDK Quality And Tests (sandbox) (push) Blocked by required conditions
SDK Tests / Go SDK Quality And Tests (push) Blocked by required conditions
SDK Tests / SDK CI (push) Blocked by required conditions
Real E2E Tests / changes (push) Has started running
SDK Tests / changes (push) Has started running
chore: import upstream snapshot with attribution
2026-07-13 13:39:33 +08:00

1.7 KiB

title, description
title description
Playwright Access web pages in headless mode using Playwright + Chromium in OpenSandbox.

Playwright Example

Access web pages in headless mode using Playwright + Chromium in OpenSandbox to scrape title/body snippets.

Build the Playwright Sandbox Image

The Dockerfile in the example directory builds a sandbox image with Playwright and Chromium pre-installed:

cd examples/playwright
docker build -t opensandbox/playwright:latest .

This image includes:

  • Playwright Python package
  • Chromium browser binaries
  • Node.js and npm (for Playwright MCP)
  • Non-root user (playwright) for security

Start OpenSandbox server [local]

Pre-pull the Playwright image:

docker pull sandbox-registry.cn-zhangjiakou.cr.aliyuncs.com/opensandbox/playwright:latest

Start the local OpenSandbox server:

uv pip install opensandbox-server
opensandbox-server init-config ~/.sandbox.toml --example docker
opensandbox-server

Create and Access the Playwright Sandbox

# Install OpenSandbox package
uv pip install opensandbox

uv run python examples/playwright/main.py

The script launches Chromium in headless mode to access the target URL, prints title/body snippets, and saves a full-page screenshot to /home/playwright/screenshot.png inside the sandbox. It also downloads the screenshot to the local working directory as ./screenshot.png. Uses the prebuilt Playwright image by default.

Playwright screenshot

References