Run Playwright on Steel Cloud Browsers

Run Playwright in the cloud with Steel. Connect over CDP in TypeScript or Python and get managed browsers with stealth, rotating proxies, and CAPTCHA solving.

Playwright is Microsoft's cross-browser automation library. The Steel integration attaches Playwright to a Steel cloud session over the Chrome DevTools Protocol, so the rest of your script — page.goto, locators, expect, tracing — drives a remote browser with stealth, proxies, and a live viewer instead of a local Chromium.

No playwright install, no headful display, no Chrome on your machine.

Requirements

  • Steel API Key: Active Steel subscription
  • Runtime: Node.js 20+ or Python 3.10+
  • Package: playwright (TypeScript) or playwright (Python)

Connect Steel to Playwright

Pass Steel's CDP URL into chromium.connectOverCDP(). Steel returns a context with a page already open, so reuse browser.contexts()[0] instead of creating a new one:

Typescript
import { chromium } from "playwright";
import Steel from "steel-sdk";
const client = new Steel({ steelAPIKey: STEEL_API_KEY });
const session = await client.sessions.create();
const browser = await chromium.connectOverCDP(
`${session.websocketUrl}&apiKey=${STEEL_API_KEY}`,
);
const page = browser.contexts()[0].pages()[0];
Python
from playwright.sync_api import sync_playwright
from steel import Steel
client = Steel(steel_api_key=STEEL_API_KEY)
session = client.sessions.create()
playwright = sync_playwright().start()
browser = playwright.chromium.connect_over_cdp(
f"{session.websocket_url}&apiKey={STEEL_API_KEY}"
)
page = browser.contexts[0].new_page()

Full runnable starter: Steel + Playwright recipe →

FAQ

Resources