node package manager

macaca-electron

macaca-electron

Gitter Chat NPM version build status Test coverage node version

macaca electron driver

Installment

$ npm i macaca-electron -g

Standalone usage

 
const co = require('co');
const fs = require('fs');
const path = require('path');
const Electron = require('macaca-electron');
 
const electron = new Electron();
 
co(function *() {
  /**
    default options
    {
      show: true,
      alwaysOnTop: false,
      x: 0,
      y: 0,
      width: 800,
      height: 600,
      webPreferences: {
        nodeIntegration: false
      }
    }
  */
  yield electron.startDevice({
    show: false // in silence 
  });
 
  yield electron.maximize();
  yield electron.setWindowSize(null, 500, 500);
  yield electron.get('https://www.baidu.com');
  const imgData = yield electron.getScreenshot();
  const img = new Buffer(imgData, 'base64');
  const p = path.join(__dirname, '..', 'screenshot.png')
  fs.writeFileSync(p, img.toString('binary'), 'binary');
  console.log(`screenshot: ${p}`);
 
  yield electron.stopDevice();
});