2013-01-31 30 views
0

我試圖在使用Web驅動程序和python的基於Javascript的網站的iframe中查找複選框。我已經嘗試通過ID和XPATH定位,因爲我必須查找錯誤的框架,所以它們都不起作用。該複選框在頁面上向用戶可見,並且selenium IDE也似乎與我一樣得到相同的答案,但它仍導致'NoSuchElementException:消息:u'元素無法找到'無法在Selenium Web驅動程序的iframe中查找複選框

html for複選框:INPUT TYPE = 「複選框」 的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

我想你你需要首先切換到所述框架和然後找到第e元素,對幀上存在的元素執行任務/動作並切換回前一幀。

WebElement checkBoxframe = driver.findElement(By.tagName("enter frame name here")); 
driver.switchTo().frame(checkBoxframe); 
//write your selenium code here for checkbox 
driver.switchTo().defaultContent(); 
相關問題