你这个不是接口,只是个网页地址。
我找到另外一个天气预报的接口:
>
只要在项目中添加Web引用:
按照这个做:
然后人就可以实例化这个对象:
调用对应的方法就可以获取接口中的信息了。
直接在IE或其它浏览器中打开这接口网址:
>
可以看到那些方法的使用说明。
还是不会就不应该了。为了这15分,可以加我好友再问。
前期的准备工作:
一、申请API(拿好appid和private_key)
二、解读《SmartWeatherAPI<Lite> WebAPI版接口使用说明书》
三、准备好areaid、type、date、appid、urlencode($key)(注意,这里经加密的key是需要encodeurl之后的才能成为接口链接的一部分)
好了下面的编码开始:
1、从附件中的areaid_list中找到你想要的地方的areaid,并且选择要查询天气的类型
NSString areaid = @"101010100";
NSString type =
@"index_f";
/
官方文档更新的数据类型号
指数:index_f(基础接口);index_v(常规接口)
3天预报:forecast_f(基础接口);forecast_v(常规接口)
/
2、获得当前天气date
NSDate
_date = [NSDate date];
NSDateFormatter dateFormatter =
[[NSDateFormatter alloc] init];
[dateFormatter
setDateFormat:@"yyyyMMddHHmmss"];//注意日期的格式
NSString date =
[[dateFormatter stringFromDate:_date]
substringToIndex:12];//用到的精确到分,24小时制60分钟制
3、申请的appid,和private_key
NSString appid =
@"15ds45s13a465s";//这里是楼主随便输入的,瞎编的
NSString private_key =
@"46s4ds_SmartWeatherAPI_45s44d6";//也是瞎编的
4、算出经过urlencode后的key,这步比较重要,步骤也多,请耐心看完。
在原来的的基础上是在PHP的环境中算出的,代码如下,可在“
>
使用搜索引擎可以得到很多的天气预报接口,这里以某个api为例
>
参数为city=城市名称
尝试获取南昌的天气预报
>
得到下面xml数据
<xml version="10" encoding="utf-8"><resp>
<city>南昌</city>
<updatetime>16:55</updatetime>
<wendu>5</wendu>
<fengli>3级</fengli>
<shidu>90%</shidu>
<fengxiang>北风</fengxiang>
<sunrise_1>06:54</sunrise_1>
<sunset_1>17:19</sunset_1>
<sunrise_2/>
<sunset_2/>
<environment>
<aqi>26</aqi>
<pm25>13</pm25>
<suggest>各类人群可自由活动</suggest>
<quality>优</quality>
<MajorPollutants/>
<o3>44</o3>
<co>1</co>
<pm10>14</pm10>
<so2>4</so2>
<no2>27</no2>
<time>16:00:00</time>
</environment>
<yesterday>
<date_1>4日星期五</date_1>
<high_1>高温 11℃</high_1>
<low_1>低温 7℃</low_1>
<day_1>
<type_1>阴</type_1>
<fx_1>无持续风向</fx_1>
<fl_1>微风</fl_1>
</day_1>
<night_1>
<type_1>小到中雨</type_1>
<fx_1>北风</fx_1>
<fl_1>3-4级</fl_1>
</night_1>
</yesterday>
<forecast>
<weather>
<date>5日星期六</date>
<high>高温 7℃</high>
<low>低温 5℃</low>
<day>
<type>中到大雨</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>小到中雨</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>6日星期天</date>
<high>高温 10℃</high>
<low>低温 5℃</low>
<day>
<type>阴</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>7日星期一</date>
<high>高温 13℃</high>
<low>低温 6℃</low>
<day>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>晴</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>8日星期二</date>
<high>高温 13℃</high>
<low>低温 7℃</low>
<day>
<type>晴</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>多云</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
<weather>
<date>9日星期三</date>
<high>高温 13℃</high>
<low>低温 10℃</low>
<day>
<type>小雨</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</day>
<night>
<type>小雨</type>
<fengxiang>无持续风向</fengxiang>
<fengli>微风级</fengli>
</night>
</weather>
</forecast>
<zhishus>
<zhishu>
<name>晨练指数</name>
<value>不宜</value>
<detail>有较强降水,请避免户外晨练,建议在室内做适当锻炼,保持身体健康。</detail>
</zhishu>
<zhishu>
<name>舒适度</name>
<value>较舒适</value>
<detail>白天有雨,人们会感到有些凉意,但大部分人完全可以接受。</detail>
</zhishu>
<zhishu>
<name>穿衣指数</name>
<value>较冷</value>
<detail>建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。</detail>
</zhishu>
<zhishu>
<name>感冒指数</name>
<value>极易发</value>
<detail>将有一次强降温过程,天气寒冷,且空气湿度较大,极易发生感冒,请特别注意增加衣服保暖防寒。</detail>
</zhishu>
<zhishu>
<name>晾晒指数</name>
<value>不宜</value>
<detail>有较强降水,不适宜晾晒。若需要晾晒,请在室内准备出充足的空间。</detail>
</zhishu>
<zhishu>
<name>旅游指数</name>
<value>较不宜</value>
<detail>天气稍凉,有微风,同时有有较强降水,会给出行产生很多麻烦,建议好还是多选择在室内活动!。</detail>
</zhishu>
<zhishu>
<name>紫外线强度</name>
<value>最弱</value>
<detail>属弱紫外线辐射天气,无需特别防护。若长期在户外,建议涂擦SPF在8-12之间的防晒护肤品。</detail>
</zhishu>
<zhishu>
<name>洗车指数</name>
<value>不宜</value>
<detail>不宜洗车,未来24小时内有雨,如果在此期间洗车,雨水和路上的泥水可能会再次弄脏您的爱车。</detail>
</zhishu>
<zhishu>
<name>运动指数</name>
<value>较不宜</value>
<detail>有较强降水,建议您选择在室内进行健身休闲运动。</detail>
</zhishu>
<zhishu>
<name>约会指数</name>
<value>不适宜</value>
<detail>较强降水天气会给室外约会增添许多麻烦,尽量不要外出约会,最好在室内促膝谈心。</detail>
</zhishu>
<zhishu>
<name>雨伞指数</name>
<value>带伞</value>
<detail>有较强降水,您在外出的时候一定要带雨伞,以免被雨水淋湿。</detail>
</zhishu>
</zhishus>
</resp>
得到数据后使用XML解析数据即可,最好是建立一个实体类来存储数据
下面是使用DOM方式解析部分数据代码
DocumentBuilder builder = DocumentBuilderFactorynewInstance()newDocumentBuilder();//is是网络连接得到的输入流
Document doc = builderparse(is);
if(doc==null) throw new Exception();
Element element = docgetDocumentElement();
NodeList childList = elementgetChildNodes();
for(int i=0; i<childListgetLength(); i++){
Element e = (Element) childListitem(i);
String tag = egetTagName();
String text = egetTextContent();
if("city"equals(tag)){
//城市
}else if("updatetime"equals(tag)){
//更新时间
}else if("wendu"equals(tag)){
//即时温度
}else if("fengli"equals(tag)){
//风力
}else if("shidu"equals(tag)){
//湿度
}else if("fengxiang"equals(tag)){
//风向
}
}
接口实例:>
这个简单:
网上有免费的天气接口:WebService
写个程序,调用WebService ,给你返回一个数组,数组里面就是你需要的结果。
>
以上就是关于c#窗体程序中怎么获取到从接口中得到的信息天气预报http://m.weather.com.cn/data/101230101.html全部的内容,包括:c#窗体程序中怎么获取到从接口中得到的信息天气预报http://m.weather.com.cn/data/101230101.html、如何使用中国气象局API开发天气APP、android怎样使用天气预报接口 实现天气预报等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)