J'essaie de prendre une capture d'écran d'une page Web avec le code ci-dessous. Avec quelques légères modifications, je peux enregistrer la capture d'écran en tant que PNG. Cependant, les docs de nightmare.JS indiquent que la méthode .screenshot() retournera "un Buffer des données d'image". si une option "path" n'est pas fournie.Obtention du tampon de capture d'écran Nightmare.JS (v 2.9.1)
Comment puis-je avoir accès au tampon une fois la capture d'écran terminée?
const getScreenshot = (url) => {
nightmare
.goto(url)
.wait()
.evaluate(() => {
const body = document.querySelector('body');
return {
height: body.scrollHeight,
width: body.scrollWidth
};
})
.then(function(dimensions) {
return nightmare
.viewport(dimensions.width, dimensions.height)
.wait(1000)
// .screenshot(require('path').join(__dirname, 'screenshot.png'))
.screenshot()
})
.then(function(e) {
console.log('nightmare', nightmare)
nightmare.end()
.then(function(result) {
console.log('completed screenshot', result)
console.log('done');
})
});
}
Excellent! Merci Ross – bresson
Pas de problème, heureux d'aider :) – Ross