Puppeteer

Puppeteer is a Node.js library which provides a high-level API to control Chrome/Chromium over the DevTools Protocol.

Integrate the Puppeteer API with the Node API

Setup the Puppeteer API trigger to run a workflow which integrates with the Node API. Pipedream's integration platform allows you to integrate Puppeteer and Node remarkably fast. Free for developers.

Get HTML with the Puppeteer API

Get the HTML of a webpage using Puppeteer. See the documentation

 
Try it
Run Node Code with the Node API

Write custom Node.js code and use any of the 400k+ npm packages available. Refer to the Pipedream Node docs to learn more.

 
Try it
Get Page Title with the Puppeteer API

Get the title of a webpage using Puppeteer. See the documentation

 
Try it
Get PDF with the Puppeteer API

Generate a PDF of a page using Puppeteer. See the documentation

 
Try it
Screenshot a Page with the Puppeteer API

Captures a screenshot of a page using Puppeteer. See the documentation

 
Try it

Overview of Puppeteer

Puppeteer is a Node.js library which provides a high-level API to control Chrome/Chromium over the DevTools Protocol. Puppeteer runs in headless mode on Chromium on Pipedream.

Using Puppeteer you can perform tasks including:

  • Capture Screenshots: Convert webpages into images.
  • Processing PDFs: parse and scan PDFs.
  • Web Scraping: Extract data from websites.
  • UI/UX Testing: Verify user interface and experience.
  • Integration with Test Frameworks: Combine with testing frameworks.
  • Task Automation: Automate web-related tasks like form filling.
  • Functional Testing: Automate user interactions to test web application functionality.
  • Regression Testing: Ensure new code changes don't introduce bugs.

Connect Puppeteer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 import { puppeteer } from '@pipedream/browsers';

export default defineComponent({
  async run({steps, $}) {
    const browser = await puppeteer.browser();
    
    // Interact with the web page programmatically
    // See Puppeeter's Page documentation for available methods:
    // https://pptr.dev/api/puppeteer.page
    const page = await browser.newPage();

    await page.goto('https://pipedream.com/');
    const title = await page.title();
    const content = await page.content();

    // The browser needs to be closed, otherwise the step will hang
    await browser.close();

    return { title, content }
  },
})

Overview of Node

Develop, run and deploy your Node.js code in Pipedream workflows, using it between no-code steps, with connected accounts, or integrate Data Stores and File Stores.

This includes installing NPM packages, within your code without having to manage a package.json file or running npm install.

Below is an example of installing the axios package in a Pipedream Node.js code step. Pipedream imports the axios package, performs the API request, and shares the response with subsequent workflow steps:

Connect Node

1
2
3
4
5
6
7
// To use previous step data, pass the `steps` object to the run() function
export default defineComponent({
  async run({ steps, $ }) {
    // Return data to use it in future steps
    return steps.trigger.event
  },
})

Community Posts

Automate checking a ticket system's availability with Node.js and Pipedream
Automate checking a ticket system's availability with Node.js and Pipedream
How I used Node.js and Pipedream to automatically scrape a ticket booking site and notify me if availability had changed.