我想使用 chromless api 捕获整页屏幕截图。(整页与首屏下方的所有内容一样,而不仅仅是当前视口。
为了做到这一点,我认为可以计算网页的高度(使用document.body.scrollHeight
),并将视口高度设置为该值。
这是我目前拥有的,我正在他们的演示网站上进行测试:
const chromeless = new Chromeless({ remote: true })
const screenshot = await chromeless
.goto('https://www.graph.cool')
.setViewport({width: 1024, height: 800, scale: 1})
.evaluate(() => {
const height = document.body.scrollHeight;
return height
})
.setViewport({width: 1024, height: height, scale: 1})
.screenshot()
console.log(screenshot)
await chromeless.end()
我认为(希望)我的 javascript 没问题,也许这是 API 的限制?document
是否可以从无头 Web 浏览器访问该对象?
以下是评估文档以供参考: https ://github.com/graphcool/chromeless/blob/master/docs/api.md#api-evaluate