HttpClient是不行的,看网上说HtmlUnit,说 可以获取后台js加载完后的完整页面,但是我按照文章上说的 写了 ,都不好使。
求解答,其中典型的就是这个链接的页面,怎么能在java程序中获取其中的数据?
http://xinjinqiao.tprtc.com/admin/main/flrpro.do
8 个解决方案
#1
没人遇到过这个问题吗
#2
试试
String s= "http://xinjinqiao.tprtc.com/admin/main/pro!lrprolist.do";
URL url = new URL(s);
HttpURLConnection http = (HttpURLConnection) url.openConnection();
http.setDoOutput(true);
http.setDoInput(true);
http.setRequestMethod("POST");
http.connect();
OutputStreamWriter out = new OutputStreamWriter(http.getOutputStream(), "UTF-8");
String input = "name=flr&nowpage=1&pagesize=10";
out.append(input);
out.flush();
out.close();
int length = (int) http.getContentLength();
System.out.println(length);
BufferedReader reader = new BufferedReader(new InputStreamReader(http.getInputStream()));
String line;
StringBuffer buffer = new StringBuffer();
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
reader.close();
http.disconnect();
System.out.println(buffer.toString());
#3
很好, 学习了
#4
谢谢,所以你是 直接找出js的请求地址,然后获取 后台的json数据的方式?
看来不能解析js,或者说 获取js执行完的 页面 了。
那问一下,你是怎么找到这个地址的?
我看firedebug里 只有一个当前页面的网络请求啊?
你是看的js代码?
#5
代码可以看到, 你也可以抓包看看。
#6
看firedebug的XHR
#7
#8
#1
没人遇到过这个问题吗
#2
试试
String s= "http://xinjinqiao.tprtc.com/admin/main/pro!lrprolist.do";
URL url = new URL(s);
HttpURLConnection http = (HttpURLConnection) url.openConnection();
http.setDoOutput(true);
http.setDoInput(true);
http.setRequestMethod("POST");
http.connect();
OutputStreamWriter out = new OutputStreamWriter(http.getOutputStream(), "UTF-8");
String input = "name=flr&nowpage=1&pagesize=10";
out.append(input);
out.flush();
out.close();
int length = (int) http.getContentLength();
System.out.println(length);
BufferedReader reader = new BufferedReader(new InputStreamReader(http.getInputStream()));
String line;
StringBuffer buffer = new StringBuffer();
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
reader.close();
http.disconnect();
System.out.println(buffer.toString());
#3
很好, 学习了
#4
谢谢,所以你是 直接找出js的请求地址,然后获取 后台的json数据的方式?
看来不能解析js,或者说 获取js执行完的 页面 了。
那问一下,你是怎么找到这个地址的?
我看firedebug里 只有一个当前页面的网络请求啊?
你是看的js代码?
#5
代码可以看到, 你也可以抓包看看。
#6
看firedebug的XHR