puppeteer-extra-plugin-block-resources

Block resources (images, media, etc.) in puppeteer.

Usage no npm install needed!

<script type="module">
  import puppeteerExtraPluginBlockResources from 'https://cdn.skypack.dev/puppeteer-extra-plugin-block-resources';
</script>

README

puppeteer-extra-plugin-block-resources

A plugin for puppeteer-extra.

Install

yarn add puppeteer-extra-plugin-block-resources

API

Table of Contents

Plugin

Extends: PuppeteerExtraPlugin

Block resources (images, media, css, etc.) in puppeteer.

Supports all resource types, blocking can be toggled dynamically.

Type: function (opts)

  • opts Object Options (optional, default {})
    • opts.blockedTypes Set<string>? Specify which resourceTypes to block (by default none)

Example:

puppeteer.use(require('puppeteer-extra-plugin-block-resources')({
  blockedTypes: new Set(['image', 'stylesheet'])
}))

//
// and/or dynamically:
//

const blockResourcesPlugin = require('puppeteer-extra-plugin-block-resources')()
puppeteer.use(blockResourcesPlugin)

const browser = await puppeteer.launch({ headless: false })
const page = await browser.newPage()

blockResourcesPlugin.blockedTypes.add('image')
await page.goto('http://www.msn.com/', {waitUntil: 'domcontentloaded'})

blockResourcesPlugin.blockedTypes.add('stylesheet')
blockResourcesPlugin.blockedTypes.add('other') // e.g. favicon
await page.goto('http://news.ycombinator.com', {waitUntil: 'domcontentloaded'})

blockResourcesPlugin.blockedTypes.delete('stylesheet')
blockResourcesPlugin.blockedTypes.delete('other')
blockResourcesPlugin.blockedTypes.add('media')
blockResourcesPlugin.blockedTypes.add('script')
await page.goto('http://www.youtube.com', {waitUntil: 'domcontentloaded'})

availableTypes

Get all available resource types.

Resource type will be one of the following: document, stylesheet, image, media, font, script, texttrack, xhr, fetch, eventsource, websocket, manifest, other.

Type: Set<string>


blockedTypes

Get all blocked resource types.

Blocked resource types can be configured either through opts or by modifying this property.

Type: Set<string>