Puppeteer コードに遅延を導入するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-10 01:39:02
オリジナル
325 人が閲覧しました

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)
ログイン後にコピー

この関数は、指定された回数だけコードの実行を効果的に一時停止します。ミリ秒。

評価された Promises の使用

それでも page.evaluate を使用したい場合は、現在のコードを変更して、必要な遅延の後に Promise を解決できます。

await page.evaluate(async() => {
    await new Promise(function(resolve) { 
           setTimeout(resolve, 1000)
    });
});
ログイン後にコピー

ただし、このアプローチは、次のような可能性があるため、最初の 2 つの方法ほど実用的ではない可能性があります。過剰な複雑さ。

以上がPuppeteer コードに遅延を導入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート