はじめに
Selenium を使用すると、開発者は頻繁に次のような状況に遭遇します。要素を操作する前に、要素が完全にロードされるまで待つ必要があります。この記事では、そのようなシナリオを検討し、Selenium と Python を使用した解決策を提供します。
問題
開発者は、Selenium を使用して特定の Web サイトの登録フォームを自動化しようとしました。ただし、自動化は登録が完了するまで待機できなかったため、スクリプトが途中で他のアクションを続行することになりました。
質問
開発者は、質問を特定するために支援を求めました。この問題を解決し、成功した登録を表す要素が完全にロードされるまで Selenium が待機するようにする解決策を見つけました。
解決策
提供されたコードを確認したところ、要素を待機するステートメントの形式が正しくないことがわかりました。正しい Python 形式は次のとおりです:
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="accountStandalone"]/div/div/div[2]/div/div/div[1]/button'))).click()
さらに、開発者は、特定のテキストまたは特定のテキストを含む要素 (例: "NU ÄR DU MEDLEM) の可視性を確認するためにウェイターを使用することをお勧めします。 、こんにちは。」または「FORTSÄTT」)登録が成功したことを示します。 CSS_SELECTOR または XPATH メソッドを使用して、これらの要素をターゲットにすることができます。
ウェイターの例
以上がSelenium と Python では、対話前に Web 要素が完全にロードされていることをどのように確認できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。