「java读取ajax」java读取properties配置文件

博主:adminadmin 2023-03-22 02:08:08 725

今天给各位分享java读取ajax的知识,其中也会对java读取properties配置文件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何用JAVA爬取AJAX加载后的页面

普通的爬取是抓不了js的之后的数据的 可以用phantomjs或者htmlUnit实现

附上phantomjs示列代码

package cn.wang.utils;

import java.util.Random;

import com.gargoylesoftware.htmlunit.BrowserVersion;

import com.gargoylesoftware.htmlunit.CookieManager;

import com.gargoylesoftware.htmlunit.NicelyResynchronizingAjaxController;

import com.gargoylesoftware.htmlunit.WebClient;

public class htmlUnitUtils {

static WebClient webClient = null;

static Random random = new Random();

static{

//1.创建对象

webClient = new WebClient(BrowserVersion.CHROME);

//2.设置参数

//启动js

webClient.getOptions().setJavaScriptEnabled(true);

//关闭css渲染

webClient.getOptions().setCssEnabled(false);

//启动重定向

webClient.getOptions().setRedirectEnabled(true);

//设置连接超时时间 ,这里是10S。如果为0,则无限期等待

webClient.getOptions().setTimeout(1000 * 15);

//启动cookie管理

webClient.setCookieManager(new CookieManager());

//启动ajax代理

webClient.setAjaxController(new NicelyResynchronizingAjaxController());

//js运行时错误,是否抛出异常

webClient.getOptions().setThrowExceptionOnScriptError(false);

//设置浏览器请求信息

webClient.addRequestHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");

webClient.addRequestHeader("Accept-Encoding", "gzip, deflate");

webClient.addRequestHeader("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");

webClient.addRequestHeader("Connection", "keep-alive");

webClient.addRequestHeader("Upgrade-Insecure-Requests", "1");

}

public static void runJs(String url){

try {

webClient.addRequestHeader("User-Agent", Constant.useragents[random.nextInt(Constant.useragents.length)]);

//等待js渲染执行 waitime等待时间(ms)

webClient.waitForBackgroundJavaScript(1000 * 10);

//3.获取页面

webClient.getPage(url);

} catch (Exception e) {

e.printStackTrace();

} finally {

if(webClient != null){

webClient.close();

}

}

}

public static void main(String[] args) {

runJs("");

System.setProperty("phantomjs.binary.path", "D:\\works\\tool\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe");

}

}

Java后台如何获取前台传入的ajax数据?

获取ajax数据有两种方式:

定义和参数相同的变量,可以获得相对应的名字

可以通过request来获取相应的值

有的时候还有可能获取一些cookie和session的值,这个可以用其相对应的方法来获取

java后台获取网页ajax数据和返回数据简单源码

1新建一个servlet xml中相应配置(一般自动)

2创建service方法

3接受参数,做操作,返回数据

比如页面发送ajax请求到SomeServlet

$.post("SomeServlet的请求路径",{param:"param"},function(data){

    //data为返回的数据以json形式

    alert(data.id + "  " + data.name + " " + data.age );

},"json");

Servlet

public void service(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

    request.setCharacterEncoding("utf-8");

    response.setContentType("text/html;charset=utf-8");

    PrintWriter out = response.getWriter();

    String param = request.getParameter("param");//获取参数

    //你的操作

    //返回数据

    String json = "{\"id\":1,\"name\":\"张三\",\"age\":18}";

    out.print(json);

}

    

    

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

其实任何网页的数据都是由 请求-响应 组成的,谷歌或者火狐 开了F12 选择网络,点击那个更多按钮,你就可以获取到他访问的连接,后面不论普通的 httpclient 还是jsoup 都可以获取到response内容了,个人感觉这样的返回json的可能性很大,你先试试浏览器工具吧

如何用java抓取ajax页面的内容

ajax页面是动态生成了,直接抓不到。不过也不是没有途径的,通常找到该ajax通道地址还是能获取到里面的内容的。

从ajax所在页面可以找到蛛丝马迹,当然每个页面都不一样,所以你别问我要死方法。

我给你指个思路:用火狐浏览器,监控页面信息,当你点击请求时,会有通道地址信息出现。

当然你获得通道信息知识相对某一个请求的,你还得分析出它们的通式。

我拿sina新闻网举个例子你可能好理解一点:某国内新闻,标题,正文,日期我都从爬取的页面获得了,但我还想获得评论的信息(评论是动态生成的)。于是,我解析爬取页面的meta name="sudameta" 因为这个标签有改新闻评论通道的两个信息:channel和newsid。等等等等

就是这种思路,最后找到评论页面。比如title------------中纪委:部分干部不想抓不会抓不敢抓致问题拖炸|中纪委|问责_新浪新闻

拼出的评论通道是comment5.news.sina.com.cn/page/info?format=jsonchannel=gnnewsid=1-1-31456214group=0compress=1ie=gbkoe=gbkpage=1page_size=10

然后你去解析这个页面内容,再转码就可以得到评论内容了。

我这么说不知道你明白怎么做了不?

这是我做网络爬虫的一点点心得,曾经尝试了各种方法,包括引入第三方jar也没很好的结局,最终才获得这么些心得,毫无保留的分享给你了。

谢谢

小白求教,java中怎么获取ajax发送的json数据

在JS中,一般是使用eval()函数将JSON的字符串解析成JSON数据格式。

测试代码如下:

var obj = eval("("+data+")”);//转为json对象                       

alert("return_code:"+obj["return_code"]);//弹出json对象return_code属性

这边需要注意的是,eval("("+data+")”)要这么写,里面还带了一对括号。原因在于:eval本身的问题。 由于json是以”{}”的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式。

关于java读取ajax和java读取properties配置文件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。