0
다른 요소가로드 된 후 5 초 후에 나타나는 li
요소 안에 래핑 된 단추가 있습니다. 이 요소를 클릭해야하지만 셀레늄을 사용하여이 요소에 액세스 할 수 없습니다.웹 요소가 셀레늄으로 식별되지 않았습니다.
암시 적 대기, 명시 적 대기 및 유창한 대기를 사용했습니다. Selenium은 TimeoutException 및 NoSuchElementException로 끝나는 요소를 식별 할 수 없습니다.
HTML의 요소 :
<li class="wow zoomIn" data-wow-delay="1.0s" data-reactid=".0.0.0.1.5" style="visibility: visible; animation-delay: 1s; animation-name: zoomIn;">
<button class="pip-icon-new" data-role="none" title="PIP" data-reactid=".0.0.0.1.5.0"/>
<span class="mt10 col-xs-12" data-reactid=".0.0.0.1.5.1">PIP</span>
</li>
유창함 기다립니다 :
Wait wait = new FluentWait(driver)
.withTimeout(30, TimeUnit.SECONDS)
.pollingEvery(5, TimeUnit.SECONDS)
.ignoring(NoSuchElementException.class);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("button[data-reactid='.0.0.0.1.5.0']")));
명시 기다립니다 :
WebElement myDynamicElement = (new WebDriverWait(driver, 10))
.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//*[@id='Home-page']/div[1]/ul/li[5]/button")));
myDynamicElement.click();
암시 기다립니다 :
WebDriverWait wait=new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("span[class='mt10 col-xs-12']")));
내가 뭔가를 놓친 건가요?
문제가 당신의 선택에있을 수 있습니다. Try with By.cssSelector ("button [title = 'PIP']") – acikojevic
iframe 안에 있습니까? –
@acikojevic 너무 시도해 봤어. 작동하지 않습니다. – kaushik3993