Playwright is the new Puppeteer

Playwright is the new Puppeteer

TL;DR: Playwright is the successor of Puppeteer including support for all major browsers.

The most active contributors of Puppeteer Andrey Lushnikov and Joel Einbinder are now part of the team of Playwright. In one version of the repository’s they stated:

We are the same team that originally built Puppeteer at Google but has since then moved on. With Playwright, we'd like to take it one step further and offer the same functionality for all the popular rendering engines. We'd like to see Playwright vendor-neutral and shared governed.

-- Playwright Q: How does Playwright relate to Puppeteer?

For now, I don’t have any reason to switch to Playwright

Playwright (vs. Puppeteer)

By default Playwright downloads Chromium, WebKit and Firefox browsers into the OS-specific cache folders, but you can also download single browser version.

Add-ons for Playwright

Playwright also has some Niek/playwright-addons albeit really basic ones (adblocker, stealth mode)

Code generation

Code generation aka “record command sequences”: Using script recorders

One can use included CLI microsoft/playwright-cli. CLI codegen command will attempt to generate resilient text-based selectors.

It works amazing in Windows

# codegen works on on Chrome
npx playwright-cli codegen

Start any browser:

# Firefox?
npx playwright-cli ff

# or in WebKit? Like Safari but on Windows
npx playwright-cli wk

Using browser extension

Headless Recorder is a Chrome extension.

Vrlo slična fora sa extenzijom (Chrome only): Record Puppeteer or Playwright tests as code for free.

Using library

Besides codegen there is similar library QA Wolf

Playwright & Puppeteer: Basic operations

Intercepting requests


Puppeteer in PHP How to write decent crawlers with php | thePHP Website GitHub - spatie/crawler: An easy to use, powerful crawler implemented in PHP. Can execute Javascript. you can set proxy in guzzle

Screenshot: GitHub - spatie/browsershot: Convert html to an image, pdf or string

Puppeteer By default, Puppeteer downloads and uses a specific version of Chromium so its API is guaranteed to work out of the box.

composer require spatie/browsershot npm i puppeteer

; required apt -y install libgbm-dev libnss3

puppeteer/ at main · puppeteer/puppeteer

I’ve had the same problem on Ubuntu 20.04. Fixed with installing these packages

sudo apt-get update sudo apt-get -y –no-install-recommends install libxrandr2 libatk1.0-0 libatk-bridge2.0-0 libx11-xcb1 libxcb-dri3-0 libxcomposite1 libxcursor1 libxdamage1 libcups2 libdrm2 libgbm1 libgtk-3-0

And it’s possible to see the list of missing libraries with ldd

ldd ./node_modules/puppeteer/.local-chromium/linux-*/chrome-linux/chrome | grep “not found”

Puppeteer examples | Dev Diary and Web scraping in the console | Dev Diary

Kako sačekati da se sve redirekcije završe?


await page.goto(url, {waitUntil: ‘networkidle2’});

My problem:

Timeouts | Checkly Navigating & waiting | - Learn Puppeteer & Playwright


waitForNavigation doesn’t work after clicking a link · Issue #1412 · puppeteer/puppeteer

How I’ve been Using Puppeteer. Today I thought I would go over how… | by Joel Ramos | ramosly | blog

How to write chrome extension?

How to use Puppeteer in a Chrome extension - DEV Writing Chrome Extensions by Daniel Shiffman

Delightful Active Monitoring for the Modern Stack and their

Playwright also allows developers to capture videos of test script runs

Test-Automation Playwright Tool Now Records and Replays Interaction Scripts, Captures Test Videos Playwright CLI with all new test recorder, video capture and more features …

date 01. Jan 0001 | modified 28. May 2021
filename: Scraping » Playwright and Puppeteer