pre-rendering, server-side rendering, screenshots, PDFs, and scraping | Headless-Render-API
// npm install prerendercloud
const fs = require("fs");
const prerendercloud = require("prerendercloud");
// set your API key via env var PRERENDER_TOKEN or the following line:
// prerendercloud.set('prerenderToken', 'mySecretToken')
// Headless-Render-API will scrape the HTML, parse
// various meta tags, links, and take a screenshot all
// on the server. The client only parses the results
const {
body,
meta: {
title,
h1,
description,
ogImage,
ogTitle,
ogDescription,
ogType,
twitterCard,
},
links, // array
screenshot, // buffer
statusCode, // number
headers, // object of headers, e.g. { 'content-type': 'text/html' }
} = await prerendercloud.scrape("https://example.com", {
withMetadata: true,
withScreenshot: true,
// followRedirects: false, // Default: false
// deviceIsMobile: false, // Default: false, whether the meta viewport tag is taken into account
});
fs.writeFileSync("body.html", body);
fs.writeFileSync("screenshot.png", screenshot);
console.log({
meta: {
title,
h1,
description,
ogImage,
ogTitle,
ogDescription,
twitterCard,
},
links,
});