nhp

nightmare-har-plugin

Nightmare plugin used to retrieve the network activity of a web page in HAR (HTTP Archive) format

Showing:

Popularity

Downloads/wk

0

GitHub Stars

18

Maintenance

Last Commit

4yrs ago

Contributors

2

Package

Dependencies

0

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

nightmare-har-plugin

Build Status

What is nightmare-har-plugin?

Nightmarejs plugin that uses the electron devtools to capture the network activity of an http request in HAR (HTTP Archive) format.

It extends the nightmare behaviour with 2 extra methods: getHAR() and waitForDevtools(). It also contains a chrome devtools extension used to retrieve the network activity.

Nightmare extended API

.waitForDevtools()

Waits for devtools to open so all network requests can be captured. If not executed before the first goto() method, the first requests may be lost because of the async behavior of opening the devtools.

.getHAR()

Retrives the HAR information as a json.

.resetHAR()

Reset the current HAR information.

Plugin API

.install(Nightmare)

Installs the extra methods using the Nightmare's action API.

.getDevtoolsOptions()

Returns an object with some default devtools options Nightmare needs in order to open devtools shortly after initialization.

Install

npm install nightmare-har-plugin

Usage

let Nightmare = require('nightmare')
let harPlugin = require('nightmare-har-plugin')

harPlugin.install(Nightmare)

let options = {
  waitTimeout: 1000
}

let nightmare = Nightmare(Object.assign(harPlugin.getDevtoolsOptions(), options))

nightmare
  .waitForDevtools()
  .goto('http://news.ycombinator.com')
  .wait('#hnmain')
  .getHAR()
  .end()
  .then((result) => console.log(JSON.stringify({log: result})))
  .catch((error) => console.error(error))

HAR Visualization

Community

  • Network-har makes use of this plugin to provide a nodejs CLI script and a docker image to easily retrieve network activity for an http request by running electron in headless mode inside the docker container.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial