使用json解析国家气象局(天气预报)接口数据
平时我们在开发的过程中有时会要用到天气预报的信息,国家气象局为我们提供了天气预报的接口,只需要我们去解析就行了。很方便很好用
那么下面,我们开始吧!
国家气象局提供了三种数据的形式
网址在:
http://www.weather.com.cn/data/sk/101010100.html
http://www.weather.com.cn/data/cityinfo/101010100.html
http://m.weather.com.cn/data/101010100.html
最后一种是解析最全面的。
这里再附上中国天气网城市代码大全(百度文库里面的),把后面的城市代码换下就行了:
http://wenku.baidu.com/view/ea286102bb68a98271fefad8.html
数据解析格式:
第一个网址提供的json数据为:
第二个网址提供的json数据为:
第三个网址提供的json数据较为全面:
{
"weatherinfo":
{
"city":"北京",
"city_en":"beijing",
"date_y":"2013年1月17日",
"date":"",
"week":"星期四",
"fchh":"11",
"cityid":"101010100",
"temp1":"3℃~-8℃",
"temp2":"3℃~-5℃",
"temp3":"3℃~-3℃",
"temp4":"1℃~-5℃",
"temp5":"3℃~-6℃",
"temp6":"2℃~-5℃",
"tempF1":"37.4℉~17.6℉",
"tempF2":"37.4℉~23℉",
"tempF3":"37.4℉~26.6℉",
"tempF4":"33.8℉~23℉",
"tempF5":"37.4℉~21.2℉",
"tempF6":"35.6℉~23℉",
"weather1":"晴",
"weather2":"晴",
"weather3":"多云转阴",
"weather4":"阴转多云",
"weather5":"多云转晴",
"weather6":"晴转多云",
"img1":"0",
"img2":"99",
"img3":"0",
"img4":"99",
"img5":"1",
"img6":"2",
"img7":"2",
"img8":"1",
"img9":"1",
"img10":"0",
"img11":"0",
"img12":"1",
"img_single":"0",
"img_title1":"晴",
"img_title2":"晴",
"img_title3":"晴",
"img_title4":"晴",
"img_title5":"多云",
"img_title6":"阴",
"img_title7":"阴",
"img_title8":"多云",
"img_title9":"多云",
"img_title10":"晴",
"img_title11":"晴",
"img_title12":"多云",
"img_title_single":"晴",
"wind1":"微风",
"wind2":"微风",
"wind3":"微风",
"wind4":"微风",
"wind5":"微风",
"wind6":"微风",
"fx1":"微风",
"fx2":"微风",
"fl1":"小于3级",
"fl2":"小于3级",
"fl3":"小于3级",
"fl4":"小于3级",
"fl5":"小于3级",
"fl6":"小于3级",
"index":"冷",
"index_d":"天气冷,建议着棉衣、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣或冬大衣。",
"index48":"冷",
"index48_d":"天气冷,建议着棉衣、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣或冬大衣。",
"index_uv":"弱",
"index48_uv":"弱",
"index_xc":"适宜",
"index_tr":"较适宜",
"index_co":"较不舒适",
"st1":"2",
"st2":"-6",
"st3":"2",
"st4":"-3",
"st5":"3",
"st6":"-4",
"index_cl":"适宜",
"index_ls":"基本适宜",
"index_ag":"极不易发"
}
}
详细解析格式如下:
以json格式提供,格式如下 {"weatherinfo":{
//基本信息;
"city":"北京","city_en":"beijing",
"date_y":"2013年1月17日","date":"辛卯年","week":"星期三","fchh":"18","cityid":"101010100",
//摄氏温度
"temp1":"24℃~33℃","temp2":"24℃~32℃","temp3":"25℃~31℃","temp4":"23℃~30℃","temp5":"22℃~30℃","temp6":"21℃~32℃",
//华氏温度;
"tempF1":"75.2℉~91.4℉","tempF2":"75.2℉~89.6℉","tempF3":"77℉~87.8℉","tempF4":"73.4℉~86℉","tempF5":"71.6℉~86℉","tempF6":"69.8℉~89.6℉",
//天气描述;
"weather1":"多云","weather2":"晴转多云","weather3":"阴","weather4":"晴转阵雨","weather5":"阵雨","weather6":"多云",
//天气描述图片序号
"img1":"1","img2":"99","img3":"0","img4":"1","img5":"2","img6":"99","img7":"0","img8":"3","img9":"3","img10":"99","img11":"1","img12":"99",
"img_single":"1",
//图片名称;
"img_title1":"多云","img_title2":"多云","img_title3":"晴","img_title4":"多云","img_title5":"阴","img_title6":"阴","img_title7":"晴","img_title8":"阵雨","img_title9":"阵雨","img_title10":"阵雨","img_title11":"多云","img_title12":"多云","img_title_single":"多云",
//风速描述
"wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风",
//???
"fx1":"微风","fx2":"微风","fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级",
//今天穿衣指数;
"index":"炎热","index_d":"天气炎热,建议着短衫、短裙、短裤、薄型T恤衫、敞领短袖棉衫等清凉夏季服装。",
//48小时穿衣指数
"index48":"炎热","index48_d":"天气炎热,建议着短衫、短裙、短裤、薄型T恤衫、敞领短袖棉衫等清凉夏季服装。"
//紫外线及48小时紫外线
,"index_uv":"中等","index48_uv":"弱",
//洗车
"index_xc":"适宜",
//旅游
"index_tr":"较适宜",
//舒适指数
"index_co":"较不舒适",
//
"st1":"33","st2":"24","st3":"32","st4":"25","st5":"32","st6":"24",
//晨练
"index_cl":"适宜",
//晾晒
"index_ls":"适宜",
//过敏
"index_ag":"极易发"}}
字段言简意赅,城市名,英文名,日期,农历日期,星期,预报时间,城市代码,6个预报温度(华氏温度,摄氏温度),6个预报天气和风力,剩下的就是一些气象指数。
之前有朋友提到过,希望把各个城市的城市代码也整理一下,这样的话,可以跟方便的使用,经过查找,在百度文库里面找到一篇详细的城市代码。大家可以去查看,地址如下,祝大家使用愉快:
如果,这篇博客帮您解决了问题,不妨点击一下右下角的【推荐】。如果,您希望更容易地发现我的新博客,不妨点击一下【加关注】。因为,我的热情需要您的肯定和支持!感谢您的阅读,如果文章中有错误或者您有什么好的建议,也欢迎您直接留言批评指教。Thanks,friends! |