1.雅虎天气预报网站:http://hk.weather.yahoo.com/
(1)主要的软件有雅虎天气软件,传统黄历91黄历天气v2.0.1等
(2) 提供的天气预报接口的说明:如下
使用雅虎访问程序的解析参考如下网址
http://download.csdn.net/download/zsd406095755/3676406
http://bbs.9ria.com/thread-49642-1-1.html
http://kb.cnblogs.com/page/42993/2/
yahoo天气预报的url是
http://weather.yahooapis.com/forecastrss?w=2151330&u=c(返回的是XML数据)
地址编号必须是一个WOEID,可以通过雅虎的天气预报首页查询你需要的地址编号。这个编号在
想要的那个城市天气预报页的URL中。也可以通过在首页中输入你的邮政编码查询WOEID。例如,你想查询广州的天气情况,这个城市的天气预报页的URL是
http://weather.yahooapis.com/forecastrss?p=CHXX0037&u=c,所以它的WOEID是0037.
提供一份网上搜索到的雅虎天气预报城市代码:雅虎天气预报城市代码
(3)优缺点
优点:搜集到的城市代码较全,获得的信息较为全面
缺点:支持近两天的天气情况。
2.Google天气预报网站
(1)主要的软件有 手机Google天气预报,软件有 Google map 软件(主要是查看天气和GPS)等等。
(2)提供的天气预报接口的说明 http://blog.csdn.net/fengyun1989/article/details/7341166
Google开放了一套天气预报API
(1).使用邮政编码(美国)
http://www.google.com/ig/api?hl=zh-cn&weather=94043(加州山景城)
(2).使用经度纬度坐标
http://www.google.com/ig/api?hl=zh-cn&weather=,,,30670000,104019996(成都)
使用通行城市名称
(3)http://www.google.com/ig/api?weather=Beijing&hl=zh-cn(北京)
http://www.google.com/ig/api?weather=Osaka&hl=zh-cn(大阪)
或
http://www.google.com/ig/api?weather=Beijing&hl=zh(北京)
http://www.google.com/ig/api?weather=Osaka&hl=ja(大阪)
可以查找到哪些国家和城市呢?谷歌也提供了接口。返回的类型也可以根据output参数来指定。
查找国家 http://www.google.com/ig/countries?output=xml&hl=zh-cn (返回xml)
查找城市 http://www.google.com/ig/cities?hl=zh-cn&country=cn (返回json)
(3)优缺点
优点:歌的天气预报API。优点在于可以直接获取支持查询天气的国家和城市,查询的范围比较广,并且可以预报4天天气,支持经纬度查询天气(可以利用GPS做应用)。
缺点:支持的中国城市比较少。准确度不是很好,具体可以通过 http://www.google.com/ig/cities?hl=zh-cn&country=cn查询。
3.新浪天气预报网站 http://weather.news.sina.com.cn/
(1) 主要的软件有 天气通软件,新浪天气预报软件
(2)提供的天气预报接口的说明
http://php.weather.sina.com.cn/xml.php?city=武汉&password=DJOYnieT8234jlsK&day=0
其中,city后的城市可用java.net.URLEncoder.encode(“武汉”,” gb2312”);也可以直接写”武汉”;但不能用”wuhan”。
上面的城市可以自定,比如 福州可改成别的,各个城市的代码请参考
http://blog.csdn.net/qq910894904/article/details/7540093
http://ishare.iask.sina.com.cn/f/13187840.html?from=like
http://www.soft6.com/v9/2009/jckf_0420/99924.html
4.中国天气预报网站http://www.weather.com.cn/
(1) 主要的软件有 中国天气通软件
(2) 提供的天气预报的接口说明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
其中101110101是城市的代码
具体的信息参考网站http://wishblog.sinaapp.com/378
返回的是json数据。数据非常全,101010100是北京的城市代码
(3)优点:调用的接口很方便,各个城市的信息比较详细。
如果要查看天气数据格式或者具体类型。可以直接复制链接到浏览器执行就能看到数据了。
5.QQ天气预报网站 http://cd.qq.com/weather/
(1) 主要的软件有 QQ天气
(2)提供的天气预报接口的说明
代码 :http://appnews.qq.com/cgi-bin/news_weather_search?city=厦门” allowTransparency=”true”<
效果 :
http://blog.163.com/rongyao_xu/blog/static/1177693012010023380307/
(2) 优缺点
优点:信息比较准确可靠,气象信息由中央气象台提供。接口和样式多样化
iphone简单的程序例子:
1.利用JSON访问网页信息,json方式访问网站的方式,调用第三方库来解析Json
根据各个网站访问的接口来获得数据
1. – (IBAction)btnPressTouchJson:(id)sender {
2. //获取API接口
3. NSURL *url = [NSURL URLWithString:@”http://m.weather.com.cn/data/101010100.html”];
4. //定义一个NSError对象,用于捕获错误信息
5. NSError *error;
6. NSString *jsonString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&error];
7. NSLog(@”jsonString—>%@”,jsonString);
8. //将解析得到的内容存放字典中,编码格式为UTF8,防止取值的时候发生乱码
9. NSDictionary *rootDic = [[CJSONDeserializer deserializer] deserialize:[jsonString dataUsingEncoding:NSUTF8StringEncoding] error:&error];
10. //因为返回的Json文件有两层,去第二层内容放到字典中去
11. NSDictionary *weatherInfo = [rootDic objectForKey:@”weatherinfo”];
12. NSLog(@”weatherInfo—>%@”,weatherInfo);
13. //取值打印
14. txtView.text = [NSString stringWithFormat:@”今天是 %@ %@ %@ 的天气状况是:%@ %@ “,[weatherInfo objectForKey:@”date_y”],[weatherInfo objectForKey:@”week”],[weatherInfo objectForKey:@”city”], [weatherInfo objectForKey:@”weather1″], [weatherInfo
测试:
2012-10-14 10:46:11.685 myWebView[4747:f803] the weather->今天是 2012年10月14日星期日北京的天气状况是:晴转多云 18℃~8℃
2.利用XML访问网站的信息:
XML 访问网站的方式系统自带有两种方式一个是通过libxml,一个是通过NSXMLParser
不得不说是一个很好的办法,而且事实上google maps就没有采用XML传递数据,而是采用了JSON方案
与XML一样,JSON也是基于文本的,且它们都使用Unicode编码,同样具有可读性 ,xml SDK 中有自带的类库,json一般都是利用第三的库来访问