gpt4 book ai didi

node.js - Headful Puppeteer - 屏幕截图重新加载页面

转载 作者:行者123 更新时间:2023-12-02 18:21:38 25 4
gpt4 key购买 nike

我正在使用 Puppeteer 在 headful 模式下截取全尺寸屏幕截图,因为我大部分时间都需要与浏览器交互。它运行完美,但我注意到一些奇怪的事情:调用屏幕截图时,它会重新加载页面,因此我在捕获中获得的内容并不总是我在浏览器中看到的内容。

例如,我们以 this URL 为例.如果我想展示埃菲尔铁塔,我需要点击幻灯片放映。到目前为止没问题。但是一旦截取屏幕截图,页面就会刷新并返回到沙发上那个女人的初始照片......我不知道是什么导致了这种行为。

这是我的代码:

const puppeteer = require('puppeteer');
args=['--window-size=1920,1080'];
const browser=await puppeteer.launch({ headless: false, defaultViewport: null, args);
const page=(await browser.pages())[0];
await page.goto('https://url.com');
await page.waitForTimeout(10000); // 10 sec timeframe to allow navigation
await page.screenshot({path: 'test.png', quality: 100, fullPage: true});
await browser.close();

我在 Debian 10 Linux 服务器上运行最新版本的 Puppeteer (13.1.1)。测试了很多组合、不同的参数、计时器、分辨率等都无济于事。有什么建议吗?

最佳答案

我认为它必须与整个页面的渲染有关。在 Windows 上运行你的代码我有相同的行为。

此更改不再发生:

await page.screenshot({path: 'test.png', captureBeyondViewport: false});

关于node.js - Headful Puppeteer - 屏幕截图重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70801147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com