2016-02-23 32 views
0

在页面中找不到任何元素有2个嵌套在硒中的iframe?使用硒C#在网页中找不到元素?

第一次启动时,我发现浏览器中的所有元素,但是何时去iframe [0]我在浏览器中找不到任何元素。

我的代码,如:

var iframes = browser.FindElementsByXPathName("//iframe[contains(@id,'container_page')]"); 
while (browser.FindElementsByXPathName("//span[contains(@class, 'button_Love')]").Count == 0 && iframes.Count == 0) 
    Thread.Sleep(1000); 
if (iframes.Count > 0) 
{ 
    browser.GoToFrame(iframes[0]); 
    Thread.Sleep(2000); 
} 
+0

它是硒? –

回答

0

试试下面的代码。

var driver = new FirefoxDriver(); 
     driver.Navigate().GoToUrl("you URL"); 
     WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(60)); 
     //check if there is any iframe then get that frame and switch on frame using folloiwng code. 
     var frame = wait.Until(ExpectedConditions.ElementExists(By.Id("frame_id"))); 
     driver.SwitchTo().Frame(frame); 
     var elementbutton_Love = driver.FindElements(By.ClassName("button_Love")); 

     //after doing all work you can go to default content using following code 
     driver.SwitchTo().DefaultContent(); 

如果有任何问题,请让我知道。