2015.3.2更新云聚,增加天气网接口。
2015.2.28增加百度天气图片,感谢网友彬子的反馈。
2015.2.19增加百度天气接口,更新中国天气网API。
目录:
1.中国天气网
1.1实时天气API接口(失效)
1.2当天天气API接口(失效)
1.3生活指数API接口(失效)
1.4未来五天天气API接口(有效,不稳定)
2.开放数据网天气
2.1简介
2.2.一天天气API接口
2.3未来五天天气API接口
3.中国天气&开放数据综合版
3.1实时天气
3.2当天天气
3.3未来五天
3.4生活指数
4.随身云天气API(推荐)
4.1简介
4.1简化版未来6天天气API接口
4.2详细版未来6天天气API接口
5.新浪天气(推荐)
5.1简介
5.2使用方法
5.3天气标志
6.微云
7.百度API
7.1获取天气
7.2获取城市列表
8.天气网(网页插件型)
8.1简介
8.2智能未来五天天气
前言:
1.城市代码
现在网络上流传的天气API实际上大多最终调用的是中国天气网的数据,而中国天气网是把每个地方分配了一个代码,这个代码就是城市代码,要获取天气,我们需要知道城市代码,有2种方法:
1.1手动查询
在搜索框上输入你要需要获得天气的城市,点击查询,即可在地址栏获得相应城市编号,示范:北京的地方代码:101010100
1.2自动查询
1.2.1通过百度API
注意:"%e5%8c%97%e4%ba%ac"是"北京"的URL编码(UniCode)
返回格式(UniCode):
{"errNum":0,"retMsg":"success","retData":{"cityName":"北京","provinceName":"北京","cityCode":"101010100","zipCode":"100000","telAreaCode":"010"}}
很明显,cityCode的值"101010100"就是城市代码。
2.天气标志图片
网络上流传的一些很好用的免费API却没有提供天气标志图片,对有此需求的人里说,不得不说是个遗憾,为了弥补这个遗憾,不得不借助第三方平台配合使用,目前作者使用的是新浪天气平台的数据:
把天气API获取到的天气标志转换为拼音,比如“多云”,转换为拼音“duoyun“,然后根据下面的规则转换为图片地址:
2.1新浪图片
大图180*180
2.2百度天气图片
目前知道的小图,感谢网友彬子的反馈
多云(白天)多云(夜间)
第一节:中国天气网
1.1简介
中国最权威的天气预报网络平台,很多平台实际上也是用的他们的数据。
1.2地方代码获取方法
前文已经提过
1.3实时天气接口
返回格式:
{"weatherinfo":{"city":"北京","cityid":"101010100","temp":"23","WD":"东风","WS":"2级","SD":"92%","WSE":"2","time":"09:55","isRadar":"1","Radar":"JC_RADAR_AZ9010_JB"}}
1.4获取当天天气:
weatherinfo":{"city":"北京","cityid":"101010100","temp1":"29℃","temp2":"24℃","weather":"阴转晴","img1":"d2.gif","img2":"n0.gif","ptime":"08:00"}}
注意:其中img1和img2是天气标志图片,接口格式如下:
1.5生活指数:
返回格式:文字较多,这里省略,请点击访问。
1.6获取未来几天天气(有效,不保证稳定)
图片路径:
替换方法同上
返回示例:
2.开放数据-k780数据
说明:数据来自国家气象局天气网,每小时更新一次
免费版有每小时点击次数的限制(免费版最多每小时720次查询)
2.2获取今日天气
返回实例:
参数说明:其中,wedid是城市气象编号,与中国天气网编号一致,key和sign是身份验证,注册一个可以换成自己的,上例中的10003是公众帐号,formt是返回格式,支持json,xml,除了formt不是必须的以外,其他参数都是必须提供的。
比如我想获得深圳的今日数据:
第一步:首先查询深圳的城市代码
经查询,深圳的地方代码是101280601
第二步:通过地方代码获取今日天气
深圳的今天天气数据就是:
2.3获取未来五天
转换方法与前面类似,这里就不需要重复了。
3.综合方案
3.2今天天气
2个选择:
3.3未来几天天气
今天天气及未来五天天气:
4.随身云天气API接口
APP"中华万年历"使用的API接口,查询速度很快,唯一的缺点是没有天气标志图片,提供2个接口,一个简化版,一个详细版,详细说明如下:
4.2简化版接口
参数citykey就是设置地方代码,和中国天气网的地方代码一样,替换要查询的地方代码即可,下同。
4.3.详细版接口
5.新浪天气接口
接口示例:
其中,city后是城市名称,Password固定,Day为0表示当天天气,1表示第二天的天气,2表示第三天的天气,以此类推,最大为4
图片格式:
figure1和figure2标签分别代表天气的白天和夜间标志,根据下面的规则转换为具体的路径: