被其他人拦截时点击元素:解决 Splinter/Selenium 中的 ElementClickInterceptedException
抓取网页时,点击某些元素可能会具有挑战性,因为模糊元素的存在。在 Selenium 中,当尝试单击被另一个元素遮挡的元素时,会引发 ElementClickInterceptedException。一种常见的情况是,当加载指示器(通常由“loadingWhiteBox”之类的类表示)临时出现在页面上并阻止与底层元素交互时。
要解决此问题,请考虑以下方法:
<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中文网其他相关文章!