Selenium에서 오버레이로 숨겨진 요소 클릭
Selenium 기반 자동화에서는 오버레이로 가려진 요소를 클릭하는 것이 일반적인 문제일 수 있습니다. . "MyElement 요소는 (x, y) 지점에서 클릭할 수 없습니다... 다른 요소가 클릭을 받습니다."라는 오류 메시지는 이러한 상황을 나타냅니다.
문제 해결
이 문제를 해결하려면 다음 접근 방식을 고려하세요.
WebElement element = driver.findElement(By.id("id1")); Actions actions = new Actions(driver); actions.moveToElement(element).click().build().perform();
JavascriptExecutor jse1 = (JavascriptExecutor)driver; jse1.executeScript("scroll(250, 0)"); // if the element is on top. jse1.executeScript("scroll(0, 250)"); // if the element is at bottom.
페이지 새로 고침:
요소를 클릭할 수 있게 되기 전에 페이지가 새로 고쳐지면 대기를 유도하세요.
Thread.sleep(500); // replace 500 with an appropriate timeout in milliseconds
WebDriverWait wait2 = new WebDriverWait(driver, 10); wait2.until(ExpectedConditions.elementToBeClickable(By.id("id1")));
WebDriverWait wait3 = new WebDriverWait(driver, 10); wait3.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath("ele_to_inv")));
WebElement ele = driver.findElement(By.xpath("element_xpath")); JavascriptExecutor executor = (JavascriptExecutor)driver; executor.executeScript("arguments[0].click();", ele);
위 내용은 Selenium에서 오버레이로 숨겨진 요소를 클릭하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!