获取每小时的天气

如今网上天气API非常多,我找了很长时间,发现了一个比较不错的API

易用天气:http://www.yytianqi.com/

完全免费,只不过每小时限制访问次数,30次每小时,应该够用了


①进入官网后点击“API介绍”
这里写图片描述


②参照URL的例子:
这里写图片描述
关于参数city和key如何设置,页面上都有很详细的解释


③数据解析(推荐用json):
json解析的jar包下载地址:
http://download.csdn.net/detail/zhengyikuangge/9546875

直接上参考代码:

/*
         * 拿七天预报的数据为例
         */
        // 要访问的URL
        URL url = new URL(
                " http://api.yytianqi.com/forecast7d?city=39.93,116.40&key=smdbnsrfkqnu53b8");
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        BufferedInputStream in = new BufferedInputStream(conn.getInputStream());
        // 字节数组(字节容器)
        byte[] bs = new byte[5555];
        // 读取字节流数据
        in.read(bs);
        // 转化成字符串
        String result = new String(bs);
        System.out.println("result=" + result);
        // 解析第一层
        JSONObject jo1 = JSONObject.fromObject(result);
        // 获取键为data的值
        String data = jo1.getString("data");
        System.out.println("data=" + data);
        // 解析第二层
        JSONObject jo2 = JSONObject.fromObject(data);
        // 获取键为list的值
        String list = jo2.getString("list");
        System.out.println("list="+list);
        // 解析第三层,注意键为list的值的特点
        JSONArray ja = JSONArray.fromObject(list);
        // 求当天的白天气温
        String qw1 = ja.getJSONObject(0).getString("qw1");
        System.out.println("今天的白天气温为:" + qw1);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值