Selenium C#WebDriver:WebDriverWaitを使用した要素の可視性を処理
効率的なセレンスクリプトには、堅牢なエラー処理が必要です。 一般的な課題は、Webページですぐに利用できない要素と相互作用することです。 WebDriverWait
先に進む前に特定の条件を待つことができるようにすることで解決策を提供します。
クラスは、指定された要素が特定の条件を満たすまでスクリプト実行を一時停止する強力なメカニズムを提供します。 これにより、要素が完全にロードされる前に相互作用しようとすることによって引き起こされる一般的なエラーが防止されます。
WebDriverWait
重要な条件の1つは、ドキュメントオブジェクトモデル(DOM)内の要素の存在をチェックすることです。 これは、
ExpectedConditions.ElementExists
このスニペットは、ID「ログイン」がDOMに表示される要素を最大5秒待つ
<code class="language-csharp">WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(5)); IWebElement element = wait.Until(ExpectedConditions.ElementExists(By.Id("login")));</code>
WebDriverWait
TimeoutException
は、DOMにおける要素の存在のみを確認することに注意することが重要です。 可視性や有効なステータスを保証するものではありません。 存在していると目に見えるものの両方でなければならない要素については、代わりに
以上がセレニウムC#でWebDriverWaitを使用して、相互作用の前に要素が存在するようにする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。