要素をクリックできない: Splinter / Selenium の ElementClickInterceptedException
Splinter または Selenium を使用して Web ページをスクレイピングするときに、特定の要素をクリックしようとすると問題が発生するリンクやボタンが発生する可能性があります。この問題は、Web ページが読み込まれるときに発生し、クリック可能な要素を隠す「loadingWhiteBox」が表示されます。
「loadingWhiteBox」は数秒後に消えますが、HTML コードにはそのまま残ります。ボックスは表示されたままですが、要素をクリックしようとするのが妨げられ、次のエラー メッセージが表示されます。別の要素
この問題を解決し、目的の要素をクリックするには、以下のメソッドのいずれかを実装することを検討してください。
このメソッドは、execute_script 関数を利用して、要素をクリックする JavaScript コードを実行します。<code class="python">element = driver.find_element_by_css('div[class*="loadingWhiteBox"]') driver.execute_script("arguments[0].click();", element)</code>
<code class="python">element = driver.find_element_by_css('div[class*="loadingWhiteBox"]') webdriver.ActionChains(driver).move_to_element(element).click(element).perform()</code>
以上がリンクをクリックしたときの Splinter/Selenium の「ElementClickInterceptedException」を克服する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。