我在这两个链接中都有以下 2 个链接,评论部分是使用 Javascript 生成的。有没有一种方法可以让我获得页面的最终输出,即用 Java 呈现 javascript 的页面?
http://www.glamsham.com/movies/reviews/rowdy-rathore-movie-review-cheers-for-rowdy-akki-051207.asp
我在这两个链接中都有以下 2 个链接,评论部分是使用 Javascript 生成的。有没有一种方法可以让我获得页面的最终输出,即用 Java 呈现 javascript 的页面?
http://www.glamsham.com/movies/reviews/rowdy-rathore-movie-review-cheers-for-rowdy-akki-051207.asp
您应该可以为此使用PhantomJS。它作为无头浏览器(使用 WebKit)运行,并原生支持各种 Web 标准,如 DOM 处理、CSS 选择器、JSON、Canvas 和 SVG。
您可以使用HTML Unit,一个基于 java 的“GUI LESS 浏览器”。您可以轻松获得任何页面的最终渲染输出,因为这会像 Web 浏览器那样加载页面并返回最终渲染输出。不过,您可以禁用此行为。
更新:例如,您是在问吗?你不必为此做任何额外的事情:
例子:
WebClient webClient = new WebClient();
HtmlPage myPage = ((HtmlPage) webClient.getPage(myUrl));
更新 2:您可以按如下方式获取 iframe:
HtmlPage myFrame = (HtmlPage) myPage.getFrameByName(myIframeName).getEnclosedPage();
请阅读上述链接中的文档。在 HTMLUnit 中获取页面内容没有什么不能做的