はじめに
Web ページが Selenium に完全に読み込まれたかどうかを確認するこれは、信頼性の高い Web ナビゲーションとデータ検索にとって非常に重要です。特定の要素の可視性チェックが一般的に使用されていますが、一般的なソリューションが必要です。
質問
Web ページが Selenium に完全に読み込まれているかどうかを確認しようとしています。すべてのコントロールとコンテンツが存在することを確認します。ただし、WebDriverWait で「document.readyState」をチェックするというアプローチは、一貫して機能しないようです。ページの読み込みが完了したかどうかを確認するために Selenium で使用できる汎用関数はありますか?
回答
いいえ、Selenium には専用の汎用関数はありません。ページが完全に読み込まれたかどうかを直接確認します。
ページの読み込みStrategy
1 つの方法は、DesiredCapabilities または ChromeOptions を使用して 'pageLoadStrategy' を 'normal' に設定することです。この戦略は、ブラウザ クライアントが「complete」に等しい「document.readyState」を受信するまで待機します。ただし、これはすべての JavaScript および Ajax 呼び出しが完了することを保証するものではありません。
Ajax 完了
これを考慮して、Ajax を待機するカスタム関数を作成できます。完了、「jQuery.active」が 0 に等しいかどうかを確認します。
Expected Conditions
より信頼性の高いアプローチは、ExpectedConditions で WebDriverWait を使用することです。これにより、特定の要素の可視性や特定のタイトルの存在など、特定の条件が満たされるまで待つことができます。
要素の可視性
続行する前に特定の要素が表示されていることを確認する必要がある場合は、ExpectedConditions.visibilityOfElementLocated() を使用して、その要素が表示されるまで待機します。
参照
以上がWeb ページの読み込みステータスを確実にチェックするための汎用 Selenium 関数はありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。