首页 > web前端 > js教程 > 如何在 Puppeteer 代码中引入延迟?

如何在 Puppeteer 代码中引入延迟?

Mary-Kate Olsen
发布: 2024-11-10 01:39:02
原创
358 人浏览过

How to Introduce Delays in Puppeteer Code?

在 Puppeteer 代码中创建延迟

在 Puppeteer 中,可能有必要在执行后续代码行之前引入有意的延迟。为了解决这个问题,您可以选择以下解决方案之一:

使用 Promise 函数

为了灵活且独立的延迟,请考虑使用简单的 Promise 函数:

function delay(time) {
   return new Promise(function(resolve) { 
       setTimeout(resolve, time)
   });
}
登录后复制

要实现延迟,请执行以下操作更改:

console.log('before waiting');
await delay(4000);
console.log('after waiting');
登录后复制

使用 Puppeteer 的内置函数

如果您更喜欢留在 Puppeteer 环境中,请利用内置的 waitForTimeout 函数:

await page.waitForTimeout(4000)
登录后复制

此函数将有效地暂停指定数量的代码执行毫秒。

使用评估的 Promise

如果您仍然喜欢使用 page.evaluate,您可以修改当前代码以在所需的延迟后解决 Promise:

await page.evaluate(async() => {
    await new Promise(function(resolve) { 
           setTimeout(resolve, 1000)
    });
});
登录后复制

但是,这种方法可能不如前两种方法实用,因为它具有潜在的过于复杂。

以上是如何在 Puppeteer 代码中引入延迟?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板