
Is kept as flexibile as possible, to support quick testing and iterations. The goal of this plugin is to be the definite companion to puppeteer to avoidĭetection, applying new techniques as they surface.Īs this cat & mouse game is in it's infancy and fast-paced the plugin The addition of HeadlessChrome to the user-agent being only the most obvious one.

There are a couple of ways the use of puppeteer can easily be detected by a target website. Stealth mode: Applies various techniques to make detection of headless puppeteer harder.

Implemented mainly for plugins that need data from other plugins (e.g.Import puppeteer from 'puppeteer-extra' import StealthPlugin from 'puppeteer-extra-plugin-stealth' puppeteer. Will be reduced/flattened to a single array.Ĭan be accessed by plugins that listed the dataFromPlugins requirement. name string? Filter data by optional plugin nameĬollects the exposed data property of all registered plugins.This methods attaches Puppeteer to an existing Chromium instance. options Puppeteer.FetcherOptions? See puppeteer docs.Path where Puppeteer expects to find bundled Chromium. The default flags that Chromium will be launched with. options Puppeteer.ChromeArgOptions? See puppeteer docs.In sequence to potentially update the options Object before launching the browser. options Puppeteer.ConnectOptions? See puppeteer docs.Īttach Puppeteer to an existing Chromium instance.Īugments the original nnect method with plugin lifecycle methods.Īll registered plugins that have a beforeConnect method will be called.use ( StealthPlugin ( ) ) // Add adblocker plugin to block all ads and trackers (saves bandwidth) const AdblockerPlugin = require ( 'puppeteer-extra-plugin-adblocker' ) puppeteer. Any number of plugins can be added through `e()` const puppeteer = require ( 'puppeteer-extra' ) // Add stealth plugin and use defaults (all tricks to hide puppeteer usage) const StealthPlugin = require ( 'puppeteer-extra-plugin-stealth' ) puppeteer.

puppeteer-extra is a drop-in replacement for puppeteer, // it augments the installed puppeteer with plugin functionality.
