Difference between revisions of "实况天气接口/v2.2"

From Caiyun Wiki
Jump to: navigation, search
 
(6 intermediate revisions by 2 users not shown)
Line 19: Line 19:
  
 
==== 示例2如下 ====
 
==== 示例2如下 ====
<blockquote><code> <nowiki>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/realtime.json?lang=en_US&getplacename=True</nowiki> </code></blockquote><blockquote>'''经纬度附近地址中英文名称 getplacename:'''True</blockquote><blockquote>'''语言选项 lang:'''默认为简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB)</blockquote><blockquote>'''单位制选项 unit:'''默认为公制(metric)、科学单位体系(SI) 、英制(imperial)</blockquote><blockquote>'''时区偏移秒数 tzshift:'''默认为东八区,tzshift=28800;例如:印度东5.5区,tzshift=3600*5.5==19800,使用秒是为了支持像尼泊尔这样的差 5 小时 45 分钟的地区,它们有非整齐的偏移量</blockquote>
+
<blockquote><code> <nowiki>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/realtime.json?lang=en_US</nowiki> </code></blockquote><blockquote>'''语言选项 lang:'''默认为简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB)</blockquote><blockquote>'''单位制选项 unit:'''默认为公制(metric)、科学单位体系(SI) 、英制(imperial)</blockquote><blockquote>'''时区偏移秒数 tzshift:'''默认为东八区,tzshift=28800;例如:印度东5.5区,tzshift=3600*5.5==19800,使用秒是为了支持像尼泊尔这样的差 5 小时 45 分钟的地区,它们有非整齐的偏移量;考虑了欧美夏令时。</blockquote>
  
 
=='''返回结构和说明'''==
 
=='''返回结构和说明'''==
<syntaxhighlight lang="javascript">
+
<syntaxhighlight lang="yaml">
  
status:ok,
+
status: ok
    api_version:v2.2,                                         // 版本号
+
api_version: v2.2                                          # 版本号
    api_status:active,                                         // 版本号状态
+
api_status: active                                        # 版本号状态
    lang:zh_CN,                                               // 语言
+
lang: zh_CN                                                # 语言
    unit:metric,                                               // 单位制
+
unit: metric                                              # 单位制
    result:{
+
location: [25.1552 121.6544]                              # 经纬度
        status:ok,                                            // 实况模块返回状态
+
server_time: 1443418222                                    # 服务器本次返回的utc时间戳
        temperature:28.0,                                          // 温度
+
tzshift: 28800                                            # 时区的偏移秒数,如东八区就是 28800 秒
        pres: 100991.3,                                            // 气压
+
result:
        humidity:0.92,                                            // 相对湿度
+
    status: ok                                           # 实况模块返回状态
        wind:{direction:25.33,                                    // 风向,单位是度。正北方向为0度,顺时针增加到360度。
+
    temperature: 28.0                                     # 温度
              speed:83.3},                                        // 风速,米制下是公里每小时
+
    pres: 100991.3                                       # 气压
        precipitation:{ nearest:{status:ok,
+
    humidity: 0.92                                         # 相对湿度
                                distance:0.77,                    // 最近的降水带距离
+
    wind:
                                intensity:0.3125},                // 最近的降水带降水强度(单位为雷达降水强度)
+
        direction: 25.33                                   # 风向,单位是度。正北方向为0度,顺时针增加到360度。
                        local:{status:ok,
+
        speed: 83.3                                       # 风速,米制下是公里每小时
                              intensity:0.2812,                  // 本地降水强度(单位为雷达降水强度)
+
    precipitation:
                              datasource:radar} },                // 本地降水观测的数据源(radar,GFS)
+
        nearest:
        cloudrate:0.51,                                            // 云量
+
            status: ok
        dswrf: 8.3,                                                // 向下短波辐射通量
+
            distance: 0.77                                 # 最近的降水带距离
        visibility: 8.3,                                            // 能见度
+
            intensity: 0.3125                             # 最近的降水带降水强度(单位为雷达降水强度)
 
+
        local:
        skycon:RAIN,                                              // 主要天气现象
+
            status: ok
        comfort: {                                                // 舒适度指数及其自然语言描述
+
            intensity: 0.2812                             # 本地降水强度(单位为雷达降水强度)
            index: 7,
+
            datasource: radar                             # 本地降水观测的数据源(radar,GFS)
            desc: 冷},
+
    cloudrate: 0.51                                       # 云量
        ultraviolet: {                                            // 紫外线指数及其自然语言描述
+
    dswrf: 8.3                                           # 向下短波辐射通量
          index: 0,
+
    visibility: 8.3                                       # 能见度
          desc: 无},
+
    skycon: RAIN                                           # 主要天气现象
 
+
    comfort:                                               # 舒适度指数及其自然语言描述
        pm25: 18,                                                  // pm25值
+
        index: 7  
        pm10: 46,                                                  // pm10值
+
        desc: 冷  
        o3: 47,                                                    // 臭氧值
+
    ultraviolet:                                           # 紫外线指数及其自然语言描述
        no2: 14,                                                  // 二氧化氮值
+
      index: 0  
        so2: 1,                                                    // 二氧化硫值
+
      desc: 无  
        co: 0.3,                                                  // 一氧化碳值
+
    pm25: 18                                               # pm25,质量浓度值
        aqi: 46,                                                  // AQI(国标)
+
    pm10: 46                                               # pm10,质量浓度值
    },
+
    o3: 47                                               # 臭氧,质量浓度值
    location:[25.1552,
+
    no2: 14                                               # 二氧化氮,质量浓度值
              121.6544],                                      // 经纬度
+
    so2: 1                                                 # 二氧化硫,质量浓度值
    placename "崁脚里",                                    // 经纬度处地址
+
    co: 0.3                                               # 一氧化碳,质量浓度值
    server_time:1443418222,                                    // 服务器本次返回的utc时间戳
+
    aqi: 46                                               # AQI(国标)
    tzshift:28800,                                            // 时区的偏移秒数,如东八区就是 28800 秒
 
}
 
  
 
</syntaxhighlight>
 
</syntaxhighlight>
Line 134: Line 132:
 
|-
 
|-
 
! PM25浓度
 
! PM25浓度
| $.result.pm25 || PM25浓度(μg/m3) || 实况 || 大陆、港澳台、印度 || PM25浓度
+
| $.result.pm25 || PM25浓度(μg/m3) || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || PM25浓度
 
|-
 
|-
 
! PM10浓度
 
! PM10浓度
| $.result.pm10 || PM10浓度(μg/m3) || 实况 || 大陆、港澳台、印度 || PM10浓度
+
| $.result.pm10 || PM10浓度(μg/m3) || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || PM10浓度
 
|-
 
|-
 
! 臭氧浓度
 
! 臭氧浓度
| $.result.o3 || 臭氧浓度(μg/m3) || 实况 || 大陆、港澳台、印度 || 臭氧浓度
+
| $.result.o3 || 臭氧浓度(μg/m3) || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || 臭氧浓度
 
|-
 
|-
 
! 二氧化氮浓度
 
! 二氧化氮浓度
| $.result.no2 || 二氧化氮浓度(μg/m3) || 实况 || 大陆、港澳台、印度 || 二氧化氮浓度
+
| $.result.no2 || 二氧化氮浓度(μg/m3) || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || 二氧化氮浓度
 
|-
 
|-
 
! 二氧化硫浓度
 
! 二氧化硫浓度
| $.result.so2 || 二氧化硫浓度(μg/m3) || 实况 || 大陆、港澳台、印度 || 二氧化硫浓度
+
| $.result.so2 || 二氧化硫浓度(μg/m3) || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || 二氧化硫浓度
 
|-
 
|-
 
! 一氧化碳浓度
 
! 一氧化碳浓度
| $.result.co || 一氧化碳浓度(mg/m3) || 实况 || 大陆、港澳台、印度 || 一氧化碳浓度
+
| $.result.co || 一氧化碳浓度(mg/m3) || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || 一氧化碳浓度
 
|-
 
|-
 
! AQI
 
! AQI
| $.result.aqi || 国标AQI || 实况 || 大陆、港澳台、印度 || 国标AQI
+
| $.result.aqi || 国标AQI || 实况 || 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 || 国标AQI
 
|}
 
|}
 
{{天气现象}}
 
{{天气现象}}

Latest revision as of 10:13, 20 May 2019

本文版本:实况天气接口/v2.2,当前稳定版本版本:v2.5,历史版本:v2.2v2.3,和 v2.4

授权与认证

请先至彩云开放平台注册,注册后可以获得 token 。

把您的 token 拼到 API 请求的 URL 中,如

https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/realtime.json

其中 TAkhjf8d1nlSlspN 就是一个共用测试 token 。不要把私有token 告诉任何人!

请求样例

示例1如下
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/realtime.json
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/realtime.jsonp?callback=MYCALLBACK
token :这里是测试 token ,即 TAkhjf8d1nlSlspN
经纬度:经度在前,纬度在后,中间用半角逗号隔开,这里是 121.6544,25.1552
返回格式:json 或者 jsonp,jsonp 需提供回调函数名

示例2如下

https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/realtime.json?lang=en_US
语言选项 lang:默认为简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB)
单位制选项 unit:默认为公制(metric)、科学单位体系(SI) 、英制(imperial)
时区偏移秒数 tzshift:默认为东八区,tzshift=28800;例如:印度东5.5区,tzshift=3600*5.5==19800,使用秒是为了支持像尼泊尔这样的差 5 小时 45 分钟的地区,它们有非整齐的偏移量;考虑了欧美夏令时。

返回结构和说明

status: ok
api_version: v2.2                                          # 版本号
api_status: active                                         # 版本号状态
lang: zh_CN                                                # 语言
unit: metric                                               # 单位制
location: [25.1552 121.6544]                               # 经纬度
server_time: 1443418222                                    # 服务器本次返回的utc时间戳
tzshift: 28800                                             # 时区的偏移秒数,如东八区就是 28800 秒
result:
    status:  ok                                            # 实况模块返回状态
    temperature: 28.0                                      # 温度
    pres:  100991.3                                        # 气压
    humidity: 0.92                                         # 相对湿度
    wind:
        direction: 25.33                                   # 风向,单位是度。正北方向为0度,顺时针增加到360度。
        speed: 83.3                                        # 风速,米制下是公里每小时
    precipitation:
        nearest:
            status: ok
            distance: 0.77                                 # 最近的降水带距离
            intensity: 0.3125                              # 最近的降水带降水强度(单位为雷达降水强度)
        local:
            status: ok
            intensity: 0.2812                              # 本地降水强度(单位为雷达降水强度)
            datasource: radar                              # 本地降水观测的数据源(radar,GFS)
    cloudrate: 0.51                                        # 云量
    dswrf:  8.3                                            # 向下短波辐射通量
    visibility:  8.3                                       # 能见度
    skycon: RAIN                                           # 主要天气现象
    comfort:                                               # 舒适度指数及其自然语言描述
        index: 7 
        desc:  
    ultraviolet:                                           # 紫外线指数及其自然语言描述
       index: 0 
       desc:  
    pm25: 18                                               # pm25,质量浓度值
    pm10: 46                                               # pm10,质量浓度值
    o3:  47                                                # 臭氧,质量浓度值
    no2: 14                                                # 二氧化氮,质量浓度值
    so2: 1                                                 # 二氧化硫,质量浓度值
    co: 0.3                                                # 一氧化碳,质量浓度值
    aqi: 46                                                # AQI(国标)

变量说明

名称 健值路径(jsonpath) 时间粒度 地理范围 注释
温度 $.result.temperature 温度 实况 全球 地表2米气温
气压 $.result.pres 气压(Pa) 实况 全球 地面气压
相对湿度 $.result.humidity 相对湿度(%) 实况 全球 地表2米湿度
风向 $.result.wind.direction 风向 实况 全球 地表10米风向
风速 $.result.wind.speed 风速 实况 全球 地表10米风速
最近降水距离 $.result.precipitation.nearest.distance 距离 实况 全球 最近降水带与本地的距离
最近降水强度 $.result.precipitation.nearest.intensity 降水强度 实况 全球 最近降水处的降水强度
本地降水强度 $.result.precipitation.local.intensity 雷达降水强度 实况 全球 最近降水处的降水强度
云量 $.result.cloudrate 云量(0.0-1.0) 实况 全球 全天总云量
短波辐射 $.result.dswrf 向下短波辐射通量(W/M2) 实况 全球 地表向下短波辐射通量
能见度 $.result.visibility 能见度 实况 全球 地表水平能见度
天气状况 $.result.skycon 天气状况 实况 全球 天气状况
舒适度指数 $.result.comfort.index 舒适度指数自然语言 实况 全球 舒适度指数及其描述
紫外线指数 $.result.ultraviolet.index 紫外线指数自然语言 实况 全球 紫外线指数及其描述
PM25浓度 $.result.pm25 PM25浓度(μg/m3) 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 PM25浓度
PM10浓度 $.result.pm10 PM10浓度(μg/m3) 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 PM10浓度
臭氧浓度 $.result.o3 臭氧浓度(μg/m3) 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 臭氧浓度
二氧化氮浓度 $.result.no2 二氧化氮浓度(μg/m3) 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 二氧化氮浓度
二氧化硫浓度 $.result.so2 二氧化硫浓度(μg/m3) 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 二氧化硫浓度
一氧化碳浓度 $.result.co 一氧化碳浓度(mg/m3) 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 一氧化碳浓度
AQI $.result.aqi 国标AQI 实况 大陆、港澳台、印度、日本,美国、阿拉斯加、夏威夷、加拿大 国标AQI

天气现象 skycon v2.5

主要天气现象的优先级:冰雹 > 雷阵雨 > 降雪 > 降雨 > 雾 > 沙尘 > 浮尘 > 雾霾 > 大风 > 阴 > 多云 > 晴

天气现象 代码 备注
晴(白天) CLEAR_DAY cloudrate < 0.2
晴(夜间) CLEAR_NIGHT cloudrate < 0.2
多云(白天) PARTLY_CLOUDY_DAY 0.8 >= cloudrate > 0.2
多云(夜间) PARTLY_CLOUDY_NIGHT 0.8 >= cloudrate > 0.2
CLOUDY cloudrate > 0.8
轻度雾霾 LIGHT_HAZE PM2.5 100~150
中度雾霾 MODERATE_HAZE PM2.5 150~200
重度雾霾 HEAVY_HAZE PM2.5 > 200
小雨 LIGHT_RAIN
中雨 MODERATE_RAIN
大雨 HEAVY_RAIN
暴雨 STORM_RAIN
FOG 能见度低,湿度高,风速低,温度低
小雪 LIGHT_SNOW
中雪 MODERATE_SNOW
大雪 HEAVY_SNOW
暴雪 STORM_SNOW
浮尘 DUST aqi > 150,pm10 > 150,湿度 < 30%,风速 < 6 m/s
沙尘 SAND aqi > 150,pm10 > 150,湿度 < 30%,风速 > 6 m/s
大风 WIND
雷阵雨 THUNDER_SHOWER 闪电+降水
冰雹 HAIL 闪电+降水+其他
雨夹雪 SLEET



雾霾类(HAZE)天气现象(skycon)分三个等级:

轻度雾霾 中度雾霾 重度雾霾
AQI > 100 AQI > 150 AQI > 200

空气污染的自然语言描述air_quality: description字段,根据AQI有六个等级划分:

缺数据 missing 优 good 良 satisfactory 轻度污染 moderate 中度污染 unhealthy 重度污染 very poor 严重污染 hazardous
无测站国家和位置 0~50 51~100 101~150 151~200 201~300 >300

生活指数

1.目前支持的生活指数(life_index)包括:紫外线(ultraviolet)、舒适度(comfort)、洗车(carWashing)、感冒(coldRisk)、(穿衣指数(dressing),不建议继续使用,请使用舒适度):


紫外线(ultraviolet)实况
level desc 自然语言描述
0 None 无(夜间)
1 Weak 很弱
2 Weak 很弱
3 Low
4 Low
5 Moderate 中等
6 Moderate 中等
7 High
8 High
9 Very High 很强
10 Very High 很强
11 Extreme 极强
紫外线(ultraviolet)逐日预报(午间时段,10:00AM~14:00PM)
level desc 自然语言描述
0 None 无(夜间)
1 Weak 最弱
2 Low
3 Moderate 中等
4 High
5 Very high 很强
舒适度(comfort)实况和逐日预报
level desc 自然语言描述
0 Sticky 闷热
1 Extremely hot 酷热
2 Very hot 很热
3 Hot
4 Warm 温暖
5 Comfort 舒适
6 Cool 凉爽
7 Cold
8 Very cold 很冷
9 Freezing 寒冷
10 Frigid 极冷
11 Icy 刺骨的冷
12 Clammy 湿冷
13 Dry cold 干冷
洗车(carWashing)逐日预报
level desc 自然语言描述
1 Suitable 适宜
2 More appropriate 较适宜
3 Less appropriate 较不适宜
4 Unfit 不适应
感冒(coldRisk)逐日预报
level desc 自然语言描述
1 Less prone 少发
2 Easily prone 较易发
3 Prone 易发
4 Extremely prone 极易发

支持的单位制

1.目前支持的单位制包括:科学单位体系(SI,大写)、英制(imperial)、公制(不带参数&unit默认公制,公制还包括: metric:v1和metric:v2):

单位制
要素
SI(科学单位体系) imperial(英制) metric:v1(公制v1) metric:v2(公制v2) default metric(默认公制)
实况降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 雷达降水强度(0~1)
逐分钟降水短临预报降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 雷达降水强度(0~1)
逐小时预报降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 毫米/小时(mm/hr)
逐日预报降水量 米/秒(meter/sec) 英寸/小时(in/hr) 雷达降水强度(0~1) 毫米/小时(mm/hr) 毫米/小时(mm/hr)
距离 米(m) 英里(mi) 公里(km) 公里(km) 公里(km)
温度 开尔文(K) 华氏度(℉) 摄氏度(℃) 摄氏度(℃) 摄氏度(℃)
气压 帕(Pa) 帕(Pa) 帕(Pa) 帕(Pa) 帕(Pa)
相对湿度 0~1 0~1 0~1 0~1 0~1
风向 从北顺时针(0~360°) 从北顺时针(0~360°) 从北顺时针(0~360°) 从北顺时针(0~360°) 从北顺时针(0~360°)
风速 米/秒(m/s) 英里/小时(mi/hr) 公里/小时(km/hr) 公里/小时(km/hr) 公里/小时(km/hr)
云量 0~1 0~1 0~1 0~1 0~1
能见度 米(m) 英里(mi) 公里(km) 公里(km) 公里(km)

unit=metric:v1时,所有类型中precipitation的单位都是:雷达降水强度(0~1)

unit=metric:v2时,所有类型中precipitation的单位都是:毫米/小时(mm/hr)

2.判断降水等级:

  • 带参数&unit=metric:v1,请求实况、分钟级、逐小时和逐日降水强度,单位都为雷达降水强度(0 ~ 1);
  • 雷达降水强度(0 ~ 1)判断降水等级:0.03~0.25 小雨(雪), 0.25~0.35 中雨(雪), 0.35~0.48大雨(雪), >0.48 暴雨(雪);
  • v2.4版本中,本地存在降水时,可以根据skycon(存在于realtime、hourly、daily字段),和skycon_08h_20h和skycon_20h_32h(存在于daily字段),中的:LIGHT_RAIN, MODERATE_RAIN, HEAVY_RAIN, STORM_RAIN(LIGHT_SNOW, MODERATE_SNOW, HEAVY_SNOW,STORM_SNOW)直接获取降水等级
  • 大暴雨(雪)和特大暴雨(雪),需要根据24小时累计公制降水量(mm/24hr)来判断,研发中...