天气API接口

天气API接口说明

新接口不限次数:详情查看:https://www.sojson.com/blog/305.html

天气API接口稳定的确实没有,除非是天气官方提供的, 但是我观察了下,要是合作伙伴才有开放的可能。

其他的,例如:百度 APIStore、一些同学在其他网站上抓包下来的接口,以及什么各种收费的 API,都没有稳定的。

现在,我们网站收集了8个天气接口,采用微服务的方式提供出来,响应效率高,可以达到不限制次数。关键是免费的,JSON两种方式返回

接口返回的天气指数数据很全面,如:温度最高温度最低温度天气空气质量指数

参数只有一个,就是cityId,以前只要传城市名称,但是城市名称有N多重复的,为了精准和Cache命中率,采用了cityId

天气API 数据(以天津为例)

我测试一下请求天津的天气,链接为:http://t.weather.sojson.com/api/weather/city/101030100

返回成功状态(status)为:200 ,失败为非200

天气API JSON返回方式(成功)

{
    "time": "2018-09-22 12:37:21",//系统更新时间
    "cityInfo": {
        "city": "天津市",  //请求城市
        "cityId": "101030100",//请求ID
        "parent": "天津",     //上级,一般是省份
        "updateTime": "12:32"//天气更新时间
    },
    "date": "20180922",     //当前天气的当天日期
    "message": "Success !", //返回message
    "status": 200,          //返回状态
    "data": {
        "shidu": "22%",     //湿度
        "pm25": 15.0,       //pm2.5
        "pm10": 46.0,       //pm10
        "quality": "优",    //空气质量
        "wendu": "24",      //温度
        "ganmao": "各类人群可自由活动",//感冒提醒(指数)
        "yesterday": {  //昨天天气
            "date": "21",   //日    去掉了原来的  日字 + 星期,如  21日星期五 变成了21,星期和年月日在下面
            "ymd": "2018-09-21",   //年月日  (新增)
            "week": "星期五",       //星期 (新增)
            "sunrise": "05:56",     //日出
            "high": "高温 25.0℃",     //当天最高温
            "low": "低温 15.0℃",     //当天最低温
            "sunset": "18:12",      //日落
            "aqi": 108.0,           //空气指数
            "fx": "西北风",          //风向
            "fl": "4-5级",           //风力
            "type": "晴",            //天气
            "notice": "愿你拥有比阳光明媚的心情"//天气描述
        },
        "forecast": [//今天+未来4天
            {
                "date": "22",
                "ymd": "2018-09-22",   //年月日  (新增)
                "week": "星期六",       //星期 (新增)
                "sunrise": "05:57",
                "high": "高温 26.0℃",
                "low": "低温 15.0℃",
                "sunset": "18:10",
                "aqi": 55.0,
                "fx": "西北风",
                "fl": "4-5级",
                "type": "晴",
                "notice": "愿你拥有比阳光明媚的心情"
            },
            {
                "date": "23",
                "ymd": "2018-09-22",   //年月日  (新增)
                "week": "星期日",       //星期 (新增)
                "sunrise": "05:58",
                "high": "高温 23.0℃",
                "low": "低温 14.0℃",
                "sunset": "18:09",
                "aqi": 29.0,
                "fx": "西北风",
                "fl": "4-5级",
                "type": "晴",
                "notice": "愿你拥有比阳光明媚的心情"
            },
            {
                "date": "24",
                "ymd": "2018-09-22",   //年月日  (新增)
                "week": "星期一",       //星期 (新增)
                "sunrise": "05:59",
                "high": "高温 24.0℃",
                "low": "低温 15.0℃",
                "sunset": "18:07",
                "aqi": 25.0,
                "fx": "西北风",
                "fl": "<3级",
                "type": "晴",
                "notice": "愿你拥有比阳光明媚的心情"
            },
            {
                "date": "25",
                "ymd": "2018-09-22",   //年月日  (新增)
                "week": "星期二",       //星期 (新增)
                "sunrise": "06:00",
                "high": "高温 24.0℃",
                "low": "低温 16.0℃",
                "sunset": "18:05",
                "aqi": 56.0,
                "fx": "西南风",
                "fl": "<3级",
                "type": "晴",
                "notice": "愿你拥有比阳光明媚的心情"
            },
            {
                "date": "26",
                "ymd": "2018-09-22",   //年月日  (新增)
                "week": "星期三",       //星期 (新增)
                "sunrise": "06:01",
                "high": "高温 24.0℃",
                "low": "低温 17.0℃",
                "sunset": "18:04",
                "aqi": 86.0,
                "fx": "西南风",
                "fl": "3-4级",
                "type": "阴",
                "notice": "不要被阴云遮挡住好心情"
            }
        ]
    }
}

天气API 返回(失败)

失败情况下一般是CityId不存在问题,参数不识别。

{"status":403,"message":"no_city_id"}

接口使用说明

每个IP日调用额度不限次数,超过过多,我会直接封掉IP段。

每次请求间隔必须3秒一次,如果多次超过3秒内调用多次,会封掉IP段

本站之前提供了免费接口:https://www.sojson.com/blog/234.html,但是由于访问量太大,对本站“SOJSON 在线工具”请求经常有影响,现在不得不改变接口地址。原接口需要停用。预计最晚时间这个月底(2018年9月30日之前)。这个时间前随时会停掉

有问题请加QQ群:608222884 (验证消息“sojson api”)

禁用IP列表:

39.104.69.*(原因39.104.69.6 在2018年10月的 17~20日 排行为top 1,每天几十万次。)

47.98.211.* (原因47.98.211.131 在2018年11月份长期每天30~40万次每天)

天气接口优化点:

1.接口每8小时更新一次,机制是CDN缓存8小时更新一次。注意:“自己做缓存,因为你每请求我一次,我就是有费用的,CDN加速费用你可以解下”。

2.接口采用城市ID来精准查询请求,具体每个城市对应的ID可以查看下面的文件“city.json”每个城市的city_code字段,如果是"",就是省份不能直接查询天气。

3.如果需要1个小时更新一次的接口,并且支持  https  ,需要付费800元,不限次数,永久有效(除非接口暂停了)。

4.每分钟阈值为300次,如果超过会禁用3600秒。请谨慎使用。

城市数据:

请看下面附件链接,点击下载不会乱码,打开有可能会乱码。

http://cdn.sojson.com/_city.json

最新数据 && 有问题请加QQ群:608222884 (验证消息“sojson api” ,不对不会通过)

支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...