Developer Hub · Included on the free tier

Browser Automation Platform: an Automated Browser Powered by a Free Local API

A runtime built for automation scripts. A built-in free Local API follows the WebDriver standard and connects directly to Selenium, Puppeteer and Playwright. Your scripts run inside managed, isolated browser profiles: every task gets its own cookies, cache, fingerprint parameters and your own proxy configuration, and their data stays independent of the others. (Need a runtime for AI agents? See AI Browser Automation.)

SeleniumPuppeteerPlaywrightWebDriverLocal API

Why Run Browser Automation on NexBrowser

From debugging a single script to batch scheduling across thousands of profiles, profile management, proxy configuration, API access and task orchestration all live in one workspace.

Free Local API + WebDriver Standard

Once launched locally it exposes standardized automation endpoints over the WebDriver protocol, plugging into your existing stack with no extra gateway or paid license.

  • Compatible with Selenium / Puppeteer / Playwright
  • REST API to create / start / close profiles

Real Chrome Core, Configurable Parameters

Not a parameter-patching plugin, not a stripped-down Chromium. Page rendering, fonts and media behave exactly as in the browser you use every day, while Canvas, WebGL, fonts, Audio and WebRTC parameters are configurable per profile and stay internally consistent, so pages render correctly and selectors keep working.

  • 20+ fingerprint parameters configurable per profile
  • Headed or headless run modes

Batch Profiles, Running in Parallel

Create, start and close hundreds or thousands of profiles in one click. Each keeps its own fingerprint parameters, cookies and cache, and many windows can run in parallel with each profile’s data staying independent of the others.

  • Batch create / start / close
  • Parallel windows and synced actions

Per-Task Profile Assignment + Scheduling

Pin one profile and one proxy to each task or account, then use scheduled tasks to run batches on a plan. Failed steps can retry automatically, and run logs and collected results export to CSV or JSON.

  • Per-task profile and proxy assignment
  • Scheduling, automatic retries and result export

Framework Integrations (with Code)

Keep the scripting style you already know — just point the connection target at NexBrowser’s Local API. Below are minimal hookups for the three mainstream frameworks: Selenium, Puppeteer and Playwright.

Selenium

Keep your existing Selenium scripts and simply point debuggerAddress at the port the Local API returns, and the script runs inside the profile you chose. The profile’s fingerprint parameters, proxy and login state are maintained by the workspace, so scripts need almost no changes.

Snippets are illustrative; the actual endpoint and port are returned by the Local API.
selenium.py
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# Local API 返回的调试端口
opts = Options()
opts.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
driver = webdriver.Chrome(options=opts)

driver.get("https://example.com")
print(driver.title)

Puppeteer

Connect straight to the debugging endpoint NexBrowser exposes — the page API is identical to local development. A profile’s cookies and login state persist between runs, so scripts do not have to log in again after a restart.

Snippets are illustrative; the actual endpoint and port are returned by the Local API.
puppeteer.js
import puppeteer from 'puppeteer-core';

// 连接 NexBrowser 已启动的环境
const browser = await puppeteer.connect({
  browserURL: 'http://127.0.0.1:9222',
});
const page = await browser.newPage();
await page.goto('https://example.com');
console.log(await page.title());

Playwright

Use connectOverCDP to attach to a running NexBrowser profile, keeping Playwright’s waiting, assertion, screenshot and trace features while gaining an isolated runtime with a reproducible configuration.

Snippets are illustrative; the actual endpoint and port are returned by the Local API.
playwright.ts
import { chromium } from 'playwright';

// connectOverCDP 接入 NexBrowser 环境
const browser = await chromium.connectOverCDP('http://127.0.0.1:9222');
const ctx = browser.contexts()[0];
const page = await ctx.newPage();
await page.goto('https://example.com');
console.log(await page.title());

Keeping Long-Running Automation Stable

Writing the script is the easy part. Over long unattended runs, what decides the outcome is whether sessions persist, whether the profile configuration is reproducible, and whether scaling stays affordable.

Persistent Sessions and Login State

Each profile keeps its cookies, cache and local storage long term, so scripts do not need to log in again after a restart or a move to another machine. Profiles sync to the cloud and can be imported or exported, letting teammates inherit a working configuration directly.

Consistent, Reproducible Profiles

Canvas, WebGL, fonts, Audio and WebRTC parameters stay consistent within a profile and stable over time, so pages render the same way every run and you lose less time to broken scripts and reruns caused by configuration drift.

Automation Is Not Billed Separately

The Local API, batch profile creation, scheduled tasks and result export are included on every plan, including the free one — they are not priced as add-ons. As you scale, your cost changes with window capacity only.

Start Your Browser Automation Now

Download NexBrowser, plug into the free Local API and run Selenium / Puppeteer / Playwright inside managed, isolated profiles.