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 サイトの他の関連記事を参照してください。