如何使用HtmlUnit获取特定iframe的内容。 iframe没有名称但有ID

时间:2016-01-28 04:20:53

标签: java ajax iframe htmlunit

我想使用HtmlUnit获取特定iframe的内容。从其中一篇文章(HtmlUnit can't get the js / ajax added of IFRAME)我得知我可以使用这段代码:

HtmlPage currentPage = (HtmlPage)webClient.getWebWindowByName("Frame Name").getEnclosedPage();

但问题是iframe没有名字。我试图访问的iframe有id而不是名字。像这样:

<iframe class="text" id="frameContent" style="width:548px;" frameborder="0" src="" tabindex="-1" allowtransparency="true" scrolling="no" height="210"></iframe>

如何获取此方案中的内容?

1 个答案:

答案 0 :(得分:1)

试试这个:

HtmlPage page = client.getPage("http://example.com/");
List<FrameWindow> frames = page.getFrames();
for (FrameWindow frame : frames) {
    if (frame.getFrameElement().getId().equals("frameContent")) {
        page = (HtmlPage) frame.getEnclosedPage();
    }
}