browserless docs

browserless docs

  • Quick Start
  • Docker
  • Libraries
  • FAQ
  • Blog
  • Sign-up

browserless docsThe headless browser service for developers

const puppeteer = require('puppeteer');

puppeteer.connect({
  browserWSEndpoint: 'wss://chrome.browserless.io?token=abc'
}).then(async browser => {
  const page = await browser.newPage();
  await page.goto('https://example.com');
  await page.screenshot({path: 'screenshot.png'});
  page.close();
});
Try Out the Debugger
Sign-up for an account

One solution for all your work

Run all your headless workloads through browserless. We support nearly every headless library out there: puppeteer, selenium and more.

In most cases it's as easy as changing a single line of code.

const puppeteer = require('puppeteer');

// Before
const browser = await puppeteer.launch();

// after
const browser = await puppeteer.connect({
  browserWSEndpoint: 'wss://chrome.browserless.io?token=abc'
});
docker run
  -d
  -p 3000:3000
  -e "DEBUG=browserless/chrome"
  -e "MAX_CONCURRENT_SESSIONS=10"
  --name browserless
  --restart always
  browserless/chrome:latest

Highly configurable

Control queuing behavior, concurrent requests, and even launch flags. All bundled up in an elegant docker interface that can be used in cloud providers and kubernetes.

Truly browserless

With a wide number of REST API's, you don't have to use a library or be running NodeJS to do your work. Our APIs can do simple things like screenshots and PDFs with ease while taking care of common issues.

module.exports = async ({ req, page, callback }) => {
  await page.goto(req.params.url);
  const screenshot = await puppeteer.screenshot();
  return callback(null, { screenshot });
}
browserless docs
Docs
Quick StartDocker DocsChrome API
Community
SlackTwitter
More
GitHubStar