有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java HtmlUnit不适用于javascript处理

我已经尝试了Stackoverflow中提到的几乎所有方法,但没有一种有效

我正在尝试使用HtmlUnit抓取以下页面: http://www.nseindia.com/corporates/offerdocument/past_issue_document.htm

只返回了一个空页。它应该是由javascript问题引起的。我在HtmlUnit中尝试了以下技巧:waitForBackgroundJavaScript、刷新、重定向、睡眠、启用javascript、单击(true、true、true)等等。它们都不起作用

任何建议:

我的代码:

String url = "http://www.nseindia.com/corporates/offerdocument/past_issue_document.htm";
WebClient webClient = new WebClient(BrowserVersion.INTERNET_EXPLORER_8);
webClient.setJavaScriptEnabled(true);
HtmlPage page = (HtmlPage) webClient.getPage(url);
this.getWebClient().waitForBackgroundJavaScriptStartingBefore(5000);
System.out.println(page.asXml());

非常感谢


共 (1) 个答案

  1. # 1 楼答案

    我曾经有过类似的问题。我通过使用firefox开发插件解决了这个问题,该插件记录javascript页面执行的所有请求。然后我直接从HtmlUnit模拟了这些请求(只需从请求日志中grep请求,粘贴它们,并注入sessionid misc参数,这些参数通常很容易识别。在处理使用大量ajax的站点时特别有用