Skip to content

🌲 Parse hydration data from an rendered Next.js/Nuxt.js app - ⚡️ for web scrapers

License

Notifications You must be signed in to change notification settings

junhoyeo/parse-hydration-data

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

parse-hydration-data

NPM version

🌲 Parse hydration data from rendered Next.js/Nuxt.js apps - ⚡️ for web scrapers

npm install parse-hydration-data
# Or with Yarn
yarn add parse-hydration-data

Next.js

import { parseNextData } from 'parse-hydration-data/next'

;(async () => {
  const { data: html } = await axios.get('https://nextjs.org')
  const data = parseNextData(html)
  console.log(data)

  // { props: { pageProps: {} }, page: '/', query: {}, ... }
})()

Nuxt.js

npm install vm2
# Or with vm2
yarn add vm2

Sometimes Nuxt.js obfuscates data in window.__NUXT__, so parseNuxtData uses vm2 to safely execute outputs. This is an optional peer dependency, which means you only have to install when using this module with Nuxt.js apps.

import { parseNuxtData } from 'parse-hydration-data/nuxt'

;(async () => {
  const { data: html } = await axios.get('https://conf.vuejs.org')
  const data = parseNuxtData(html)
  console.log(data)

  // { layout: 'default', data: [ {} ], error: null, serverRendered: true }
})()

About

🌲 Parse hydration data from an rendered Next.js/Nuxt.js app - ⚡️ for web scrapers

Resources

License

Stars

Watchers

Forks

Packages

No packages published