2013-01-31 3 views
0

웹 드라이버와 파이썬을 사용하여 Javascript 기반 웹 사이트의 iframe에 체크 상자를 찾으려고합니다. ID와 XPATH로 찾기를 시도했는데 틀린 프레임을 찾고 있기 때문에 작동하지 않는 것 같습니다. 확인란은 사용자에게 페이지에 표시되며 셀렌 IDE에서도 나와 같은 대답이 표시되지만 여전히 'NoSuchElementException : Message : u'요소를 찾을 수 없습니다 'Selenium Web 드라이버로 iframe의 체크 박스를 찾는 데 문제가 있습니다.

HTML for 체크 박스 : 입력 타입 = "체크 박스"의 onclick = "CE.CESECUR.onClickFullSecurity()"ID = "cefullsecure"

셀레늄 번호 : _settings_ssl_locator = (By.XPATH ".//*[@id='cefullsecure '과의 onclick ='CE.CESECUR.onClickFullSecurity() '] ")

def click_settings_enable_ssl(self): 
    self.selenium.find_element(*self._settings_ssl_locator).select() 
+0

실제로 체크 상자는 iframe에 있으며 셀렌과 다른 프레임을 처리하는 방법을 아직 모릅니다. – Michael

+0

좋아요. 추가하여 간단하게 해결했습니다. self.selenium.switch_to_frame ('iframe_name') – Michael

답변

0

내가 먼저 프레임으로 전환 한 후 일을 찾을 필요가 당신을 생각 요소가 있으면 프레임에있는 요소에 작업/작업을 수행하고 이전 프레임으로 다시 전환합니다.

WebElement checkBoxframe = driver.findElement(By.tagName("enter frame name here")); 
driver.switchTo().frame(checkBoxframe); 
//write your selenium code here for checkbox 
driver.switchTo().defaultContent(); 
관련 문제