Dans le web scraping, il est courant de rencontrer des situations où le clic sur un élément est empêché. Ce problème peut survenir en raison d'un élément superposé, tel qu'un indicateur de chargement, qui obscurcit l'élément cible.
Lorsque vous êtes confronté à une ElementClickInterceptedException, comme le montre le message d'erreur fourni, cela indique qu'un élément obstrue le cliquez sur l'élément souhaité. Pour résoudre ce problème, il existe plusieurs approches :
Méthode 1 : Exécuter un clic Javascript
Exécuter un clic Javascript sur l'élément cible pour contourner l'élément de superposition. Cette méthode interagit directement avec le DOM du navigateur et ignore l'obstruction visuelle :
<code class="python">element = driver.find_element_by_css('div[class*="loadingWhiteBox"]') driver.execute_script("arguments[0].click();", element)</code>
Méthode 2 : Chaînes d'actions
Utilisez la classe ActionChains pour effectuer une série d'actions , notamment en déplaçant le curseur vers l'élément cible, puis en cliquant dessus :
<code class="python">element = driver.find_element_by_css('div[class*="loadingWhiteBox"]') webdriver.ActionChains(driver).move_to_element(element ).click(element ).perform()</code>
Les deux méthodes visent à contourner l'élément superposé et à interagir directement avec l'élément cible, permettant ainsi des clics réussis et un grattage continu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!