YQL查询google天气,js替换JSON结果为中文

其实这个真挺无聊的,因为天气查询通过了YQL的接口,所以google返回是英文结果,就用js替换返回JSON里的值。

var w_city_name='nanning';
//$("#w_click").click(function(){
var w_url = 'http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%3D%22http%3A%2F%2Fwww.google.com%2Fig%2Fapi%3Fweather%3D'+w_city_name+'%22&format=json&callback=?';
$.getJSON(w_url,function(w_data){
var temp_f = w_data.query.results.xml_api_reply.weather.current_conditions.temp_f.data;
var temp_c = w_data.query.results.xml_api_reply.weather.current_conditions.temp_c.data;
var humidity = w_data.query.results.xml_api_reply.weather.current_conditions.humidity.data.replace("Humidity:","");
var icon = 'http://www.google.com/'+w_data.query.results.xml_api_reply.weather.current_conditions.icon.data;
var condition=w_data.query.results.xml_api_reply.weather.current_conditions.condition.data;
var wind_condition=w_data.query.results.xml_api_reply.weather.current_conditions.wind_condition.data.replace("Wind:","");
//var condition=w_data.query.results.xml_api_reply.weather.forecast_conditions[0].condition.data;
wind_condition = wind_condition.replace(/\b(NE|NW|NS|ES|EN|E|S|N|W|at|Wind:|mph)\b/g, function($0, $1) {
return {
"NE": "北风转东风"
,"NS": "北风转南风"
,"NW": "北风转东风"
,"EN": "东风转北风"
,"ES": "东风转南风"
,"EW": "东风转南风"
,"WN": "北风转东风"
,"S":"南风"
,"W":"西风"
,"NW":"北风转西风"
,"NS":"北风"
,"N":"北风"
,"E":"东风"
,"Wind:": ""
, "at": "风速"
,"mph":"米/每秒"
}[$1];
});

condition = condition.replace(/\b(Cloudy|Chance of Storm|Overcast|Clear|Chance of Rain|Mostly|Haze|Rain)\b/g, function($0, $1) {
return {

"Cloudy": "多云"
,"Rain": "小雨"
,"Chance of Storm": "大雨"
, "Overcast": "阴天"
,"Clear":"晴朗"
,"Chance of Rain":"小雨"
,"Mostly":"",
"Haze":"薄雾"

}[$1];
});
//alert(wind_condition);
//$("#w_sd").append(humidity);//湿度
$("#w_c").empty().append(temp_c);//摄氏度
//$("#w_f").append(temp_f);//华氏度
$("#w_info").append(condition);//天气信息
//$("#w_wind").append(wind_condition);//风向
//$("#w_icon").attr({ src: icon, alt:condition});//天气图片
});


})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值