java如何获取含ajax的网页数据

问题是这样的,我需要获取一个网页的信息,但该网页上有个“显示更多”按钮用了ajax,要点击它才能得到完整数据。有人说用robot+jsoup,但我不知道是否可行,robo... 问题是这样的,我需要获取一个网页的信息,但该网页上有个“显示更多”按钮用了ajax,要点击它才能得到完整数据。有人说用robot+jsoup,但我不知道是否可行,robot模拟用户点击后没有得到新的网址,此时即使用Jsoup来连接网站我觉得显示的应该还是原始的内容。请问大家有什么办法吗? 展开
 我来答
firseve
2015-01-27 · TA获得超过356个赞
知道小有建树答主
回答量:106
采纳率:100%
帮助的人:41.3万
展开全部
其实任何网页的数据都是由 请求-响应 组成的,谷歌或者火狐 开了F12 选择网络,点击那个更多按钮,你就可以获取到他访问的连接,后面不论普通的 httpclient 还是jsoup 都可以获取到response内容了,个人感觉这样的返回json的可能性很大,你先试试浏览器工具吧
怪异丶蜡笔小新
2015-01-27 · TA获得超过509个赞
知道小有建树答主
回答量:826
采纳率:46%
帮助的人:311万
展开全部
晕死你了,你都知道ajax,都不知道怎么用么? ajax就是异步交互,页面不刷新加载数据啊。你在ajax里面提交获取数据的Action或者url(实际上就是action)action里面返回json数据,最后在ajax的回调函数里面解析json数据,再用dom显示在html上
更多追问追答
追问
你好,谢谢回答。我的问题是怎么用java获取加载后的页面上的数据。
追答
那你这问题就有问题,用java获取页面数据? 随便怎样你得先提交页面数据,后台才获取啊,不可能说服务器端一直把每个打开网页的用户端的页面数据都获取到吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-01-27
展开全部
/**
* 获取某个网页的内容
* @param url 网页的地址
* @param code 网页的编码,不传就代表UTF-8
* @return 网页的内容
* @throws IOException
*/
public static String fetch_url(String url, String code) throws IOException {
BufferedReader bis = null;
InputStream is = null;
InputStreamReader inputStreamReader = null;
try {
URLConnection connection = new URL(url).openConnection();
connection.setConnectTimeout(20000);
connection.setReadTimeout(20000);
connection.setUseCaches(false);
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11");
is = connection.getInputStream();
inputStreamReader = new InputStreamReader(is, code);
bis = new BufferedReader(inputStreamReader);
String line = null;
StringBuffer result = new StringBuffer();
while ((line = bis.readLine()) != null) {
result.append(line);
}
return result.toString();
} finally {
if (inputStreamReader != null) {
try {
inputStreamReader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (bis != null) {
try {
bis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (is != null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式