2016-12-04 168 views
0

这是我在StackOverFlow中的第一篇文章,作为中文,请忽略我可怜的英文大声笑。Java Selenium查找元素(xpath)

我想使用硒做以下操作: 1.打开网址(代码中的网址) 2.点击“实时市场LBMP”菜单下的“区域”链接,该菜单具有唯一标签“P -24A“ 3.获取”最近间隔“文件的时间并打印出来。

高点燃元素是我的目标:

enter image description here

我与第二个XPath选择stucked:

System.setProperty("webdriver.gecko.driver", "C:/Users/Haiqing/Downloads/geckodriver-v0.11.1-win64/geckodriver.exe"); 
    WebDriver wd = new FirefoxDriver(); 

    wd.get("http://mis.nyiso.com/public/"); 
    wd.switchTo().frame("MENU"); 

    WebElement zonalElement = wd.findElement(By.name("P-24Alist")); 
    zonalElement.click(); 

    wd.switchTo().defaultContent(); 
    wd.switchTo().frame("BODY"); 
    WebElement mostRecentIntervalTime = wd.findElement(By.xpath("//a[contains(text(), 'Most recent interval')]/../following-sibling::td/span")); 
    System.out.println("Most recent updated time is : " + mostRecentIntervalTime.getText()); 
    wd.quit(); 

和HTML的讲座敬爱的: 最近的间隔 12/04/16 06:42 EST

有例外enter image description here

+0

创建一个最小的例子,并更新您的问题(图片描述,删除粗体)... –

+1

谢谢Jeroen,我更新了我的问题,现在看起来更干净... – Bear

回答

1

的元素在里面<frame>,你需要先切换到它。

driver.switchTo().frame("MENU"); 

并切换回

driver.switchTo().defaultContent(); 

你可以看一下docs更多选项switchTo()方法。

+0

评论不适用于扩展讨论;这个对话已经[转移到聊天](http://chat.stackoverflow.com/rooms/129736/discussion-on-answer-by-guy-java-selenium-find-element-xpath)。 –

相关问题