ホームページ >バックエンド開発 >Python チュートリアル >Splinter/Selenium で ElementClickInterceptedException を克服する方法?
Splinter / Selenium での ElementClickInterceptedException の克服
Web ページ上の要素をクリックしようとすると、イライラする ElementClickInterceptedException が発生することがあります。これは、要素が別の要素のクリック可能な領域を妨げた場合に発生します。具体的には、エラー メッセージは、クリックしようとしている要素が「loadingWhiteBox」要素によって隠れていることを示しています。
この問題に対処するために、is_element_present_by_css コマンドを使用して問題のある要素の存在を確認しようとしました。 。ただし、このアプローチでは、要素が非アクティブであっても存在し続けるため、望ましい結果は得られません。
この状況を効果的に解決するには、次の 2 つの方法のいずれかを採用することを検討してください:
JavaScript の実行を利用する:
element = driver.find_element_by_css('div[class*="loadingWhiteBox"]') driver.execute_script("arguments[0].click();", element)
アクション チェーンを利用する:
element = driver.find_element_by_css('div[class*="loadingWhiteBox"]') webdriver.ActionChains(driver).move_to_element(element).click(element).perform()
これらのアプローチにより、邪魔な要素を回避し、目的の要素をクリックできるようになります。
以上がSplinter/Selenium で ElementClickInterceptedException を克服する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。