Difference between revisions of "小时级预报接口/v2.2"
Liuzhonghua (talk | contribs) (→示例2如下) (Tag: Visual edit) |
(Tag: Visual edit) |
||
(33 intermediate revisions by 3 users not shown) | |||
Line 7: | Line 7: | ||
<code> | <code> | ||
− | https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json | + | <nowiki>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json</nowiki> |
</code> | </code> | ||
Line 15: | Line 15: | ||
=== '''示例1如下''' === | === '''示例1如下''' === | ||
− | <blockquote><code>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json</code> | + | <blockquote><code><nowiki>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json</nowiki></code> |
− | < | + | |
− | </blockquote><blockquote>'''token:'''这里是测试 token ,即 <code>TAkhjf8d1nlSlspN</code></blockquote><blockquote>'''经纬度:'''经度在前,纬度在后,中间用半角逗号隔开,这里是 <code>121.6544,25.1552</code></blockquote><blockquote>'''返回格式:'''json 或者 jsonp,jsonp 需提供回调函数名</blockquote> | + | </blockquote><blockquote><nowiki>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.jsonp?callback=MYCALLBACK</nowiki></blockquote><blockquote>'''token:'''这里是测试 token ,即 <code>TAkhjf8d1nlSlspN</code></blockquote><blockquote>'''经纬度:'''经度在前,纬度在后,中间用半角逗号隔开,这里是 <code>121.6544,25.1552</code></blockquote><blockquote>'''返回格式:'''json 或者 jsonp,jsonp 需提供回调函数名</blockquote> |
=== '''示例2如下''' === | === '''示例2如下''' === | ||
− | <blockquote><code> | + | <blockquote><code><nowiki>https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly?lang=en_US&hourlysteps=2</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=19800(=3600*5.5),然后daily的计算都会做相应处理。</blockquote><blockquote>'''定制返回的起始时间戳 begin''':默认为当前utc时间戳,可以用来返回两日内的历史数据</blockquote><blockquote>'''定制返回逐小时预报总小时数 hourlysteps''':默认为48小时(包括当前时刻)</blockquote><blockquote>'''定制返回逐日预报总天数 dailysteps''':默认为5天(包括今天)</blockquote> |
− | |||
==返回结构和说明== | ==返回结构和说明== | ||
<syntaxhighlight lang="javascript"> | <syntaxhighlight lang="javascript"> | ||
Line 40: | Line 39: | ||
{ direction:97.97, | { direction:97.97, | ||
speed:23.27,datetime:2018-11-20 11:00}], | speed:23.27,datetime:2018-11-20 11:00}], | ||
− | precipitation:[{value:0.0,datetime:2018-11-20 10:00},{value:0.0,datetime:2018-11-20 11:00}], // 本地降水强度 | + | precipitation:[{value:0.0,datetime:2018-11-20 10:00},{value:0.0,datetime:2018-11-20 11:00}], // 本地降水强度(单位见表格) |
cloudrate:[{value:0.77,datetime:2018-11-20 10:00},{value:0.46,datetime:2018-11-20 11:00}], // 云量 | cloudrate:[{value:0.77,datetime:2018-11-20 10:00},{value:0.46,datetime:2018-11-20 11:00}], // 云量 | ||
dswrf:[{value:344.09456384,datetime:2018-11-20 10:00},{value:325.9617024,datetime:2018-11-20 11:00}], // 短波辐射 | dswrf:[{value:344.09456384,datetime:2018-11-20 10:00},{value:325.9617024,datetime:2018-11-20 11:00}], // 短波辐射 | ||
Line 54: | Line 53: | ||
location:[25.1552, | location:[25.1552, | ||
121.6544] // 经纬度 | 121.6544] // 经纬度 | ||
− | |||
server_time:1542695724, // 服务器本次返回的utc时间戳 | server_time:1542695724, // 服务器本次返回的utc时间戳 | ||
tzshift:14400, // 时区的偏移秒数,如东八区就是 28800 秒 | tzshift:14400, // 时区的偏移秒数,如东八区就是 28800 秒 | ||
Line 83: | Line 81: | ||
|- | |- | ||
! 本地降水强度 | ! 本地降水强度 | ||
− | | $.result.hourly.precipitation.value || | + | | $.result.hourly.precipitation.value || 降水量(mm/h) || 逐小时预报 || 全球 || 本地降水量 |
|- | |- | ||
! 云量 | ! 云量 | ||
Line 123: | Line 121: | ||
| $.result.hourly.aqi.value || 国标AQI || 逐小时预报 || 大陆、港澳台、暂无印度 || 国标AQI | | $.result.hourly.aqi.value || 国标AQI || 逐小时预报 || 大陆、港澳台、暂无印度 || 国标AQI | ||
|} | |} | ||
− | + | {{天气现象}} | |
− | |||
− | |||
− | { | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==支持的单位制== | ==支持的单位制== | ||
{{Template:彩云天气 API/支持的单位制}} | {{Template:彩云天气 API/支持的单位制}} | ||
+ | |||
+ | [[Category:API 产品]] |
Latest revision as of 10:15, 20 May 2019
本文版本:小时级预报接口/v2.2,当前稳定版本版本:v2.5,历史版本:v2.2,v2.3,和 v2.4。
授权与认证
请先至彩云开放平台注册,注册后可以获得 token 。
把您的 token 拼到 API 请求的 URL 中,如
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json
其中 TAkhjf8d1nlSlspN 就是一个共用测试 token 。不要把私有token 告诉任何人!
请求样例
示例1如下
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.json
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly.jsonp?callback=MYCALLBACK
token:这里是测试 token ,即 TAkhjf8d1nlSlspN
经纬度:经度在前,纬度在后,中间用半角逗号隔开,这里是 121.6544,25.1552
返回格式:json 或者 jsonp,jsonp 需提供回调函数名
示例2如下
https://api.caiyunapp.com/v2/TAkhjf8d1nlSlspN/121.6544,25.1552/hourly?lang=en_US&hourlysteps=2
语言选项 lang:简体中文(zh_CN)、繁体中文(zh_TW)、美式英语(en_US)、英式英语(en_GB)
单位制选项 unit:默认为公制(metric)、科学单位体系(SI) 、英制(imperial)
时区偏移秒数 tzshift:用户提供所需时区偏移秒,考虑欧美夏令时,默认东八(tzshift=28800);例如,用户希望取得印度(东5.5区)习惯定义下的逐日天气,加参数&tzshift=19800(=3600*5.5),然后daily的计算都会做相应处理。
定制返回的起始时间戳 begin:默认为当前utc时间戳,可以用来返回两日内的历史数据
定制返回逐小时预报总小时数 hourlysteps:默认为48小时(包括当前时刻)
定制返回逐日预报总天数 dailysteps:默认为5天(包括今天)
返回结构和说明
{ status:ok,
api_version:v2.2, // 版本号
api_status:active, // 版本号状态
lang:en_US, // 语言
unit:metric, // 单位制
result:{
hourly:{
status:ok, // 逐小时预报模块返回状态
temperature:[{value:23.0,datetime:2018-11-20 10:00},{value:22.0,datetime:2018-11-20 11:00}]}, // 温度
pres:[{value:100279.8643200001,datetime:2018-11-20 10:00},{value:100249.1918336001,datetime:2018-11-20 11:00}], // 气压
humidity:[{value:0.77,datetime:2018-11-20 10:00},{value:0.77,datetime:2018-11-20 11:00}], // 相对湿度
wind:[ { direction:95.62, // 风向,单位是度。正北方向为0度,顺时针增加到360度。
speed:22.85,datetime:2018-11-20 10:00}, // 风速,米制下是公里每小时
{ direction:97.97,
speed:23.27,datetime:2018-11-20 11:00}],
precipitation:[{value:0.0,datetime:2018-11-20 10:00},{value:0.0,datetime:2018-11-20 11:00}], // 本地降水强度(单位见表格)
cloudrate:[{value:0.77,datetime:2018-11-20 10:00},{value:0.46,datetime:2018-11-20 11:00}], // 云量
dswrf:[{value:344.09456384,datetime:2018-11-20 10:00},{value:325.9617024,datetime:2018-11-20 11:00}], // 短波辐射
visibility:[{value:23.24,datetime:2018-11-20 10:00},{value:23.0,datetime:2018-11-20 11:00}], // 能见度
skycon:[{value:PARTLY_CLOUDY_DAY,datetime:2018-11-20 10:00},{value:PARTLY_CLOUDY_DAY,datetime:2018-11-20 11:00}], // 主要天气现象
description:cloudy, clear weather after 7 tomorrow morning, increasing cloudiness, // 逐小时天气预报,自然语言描述
forecast_keypoint:cloudy, clear weather after 7 tomorrow morning, increasing cloudiness,primary:0, // 逐小时和逐分钟天气预报,综合自然语言描述
pm25:[{value:8,datetime:2018-11-20 10:00},{value:9,datetime:2018-11-20 11:00}], // PM2.5
aqi:[{value:33,datetime:2018-11-20 10:00},{value:13,datetime:2018-11-20 11:00}] // AQI(国标)
},
location:[25.1552,
121.6544] // 经纬度
server_time:1542695724, // 服务器本次返回的utc时间戳
tzshift:14400, // 时区的偏移秒数,如东八区就是 28800 秒
}
变量说明
逐小时预报,没有生活指数变量
名称 | 健值路径(jsonpath) | 量 | 时间粒度 | 地理范围 | 注释 |
---|---|---|---|---|---|
温度 | $.result.hourly.temperature.value | 温度 | 逐小时预报 | 全球 | 地表2米气温 |
气压 | $.result.hourly.pres.value | 气压(Pa) | 逐小时预报 | 全球 | 地面气压 |
相对湿度 | $.result.hourly.humidity.value | 相对湿度(%) | 逐小时预报 | 全球 | 地表2米湿度 |
风向 | $.result.hourly.wind.direction.value | 风向 | 逐小时预报 | 全球 | 地表10米风向 |
风速 | $.result.hourly.wind.speed.value | 风速 | 逐小时预报 | 全球 | 地表10米风速 |
本地降水强度 | $.result.hourly.precipitation.value | 降水量(mm/h) | 逐小时预报 | 全球 | 本地降水量 |
云量 | $.result.hourly.cloudrate.value | 云量(0.0-1.0) | 逐小时预报 | 全球 | 全天总云量 |
短波辐射 | $.result.hourly.dswrf.value | 向下短波辐射通量(W/M2) | 逐小时预报 | 全球 | 地表向下短波辐射通量 |
能见度 | $.result.hourly.visibility.value | 能见度 | 逐小时预报 | 全球 | 地表水平能见度 |
主要天气现象 | $.result.hourly.skycon.value | 天气状况 | 逐小时预报 | 全球 | 天气状况 |
逐小时预报自然语言描述 | $.result.hourly.description | 舒适度指数自然语言 | 逐小时预报 | 全球 | 舒适度指数及其描述 |
综合预报自然语言描述 | $.result.hourly.forecast_keypoint | 紫外线指数自然语言 | 逐小时预报 | 全球 | 逐小时和逐分钟天气预报,综合自然语言描述 |
PM25浓度 | $.result.hourly.pm25.value | PM25浓度(μg/m3) | 逐小时预报 | 大陆、港澳台、暂无印度 | PM25浓度 |
AQI | $.result.hourly.aqi.value | 国标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.目前支持的单位制包括:科学单位体系(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)来判断,研发中...