天气预报接口自动化测试(自动化播报天气)

网友投稿 281 2023-01-24


本篇文章给大家谈谈天气预报接口自动化测试,以及自动化播报天气对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享天气预报接口自动化测试的知识,其中也会对自动化播报天气进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何使用PHP调用API接口实现天气查询功能

最近在做微信公众平台测试时,想在里面子菜单上添加查询未来几天(包括今天)天气的功能,就查找了下好用的天气预报查询接口API,使用比较多的有:国家气象局天气接口、新浪天气预报接口、百度天气预报接口、google天气接口、Yahoo天气接口等等,我使用的是百度提供的免费天气查询接口API,下面与大家分享下...

1、查询方式:

百度提供的是根据纬度和城市名查询天气情况

2、接口事例:

3、接口参数说明:


4、返回结果说明:


5、

//城市名

$city = '上海';

//对json格式的字符串进行编码

$arr =json_decode($str,TRUE);

print_r($atr);

//城市名
   $city = '上海';
 
   //获取json格式的数据
   $str =file_get_contents("http://api.map.baidu.com/telematics/v3/weather?location=".$city."output=jsonak=5slgyqGDENN7Sy7pw29IUvrZ");

   //对json格式的字符串进行编码
   $arr =json_decode($str,TRUE);      

   print_r($atr);

6、返回页面的是json编码后的数据:

[plain] view plain copy print?

<meta charset="UTF-8"

Array

(

[error] = 0

[status] = success

[date] = 2014-03-17

[results] = Array

(

[0] = Array

(

[currentCity]= 上海

[weather_data]= Array

(

[0]= Array

(

[date] = 周一(今天, 实时:19℃)

[dayPictureUrl] =http://api.map.baidu.com/images/weather/day/qing.png

[nightPictureUrl] =http://api.map.baidu.com/images/weather/night/qing.png

[weather] = 晴

[wind] = 西南风3-4级

[temperature] = 13℃

)

[1] = Array

(

[date]= 周二

[dayPictureUrl] =http://api.map.baidu.com/images/weather/day/duoyun.png

[nightPictureUrl] = http://api.map.baidu.com/images/weather/night/yin.png

[weather]= 多云转阴

[wind]= 东北风3-4级

[temperature] = 24 ~ 9℃

)

[2] = Array

(

[date]= 周三

[dayPictureUrl] =http://api.map.baidu.com/images/weather/day/zhongyu.png

[nightPictureUrl] = http://api.map.baidu.com/images/weather/night/xiaoyu.png

[weather]= 中雨转小雨

[wind]= 东北风3-4级

[temperature] = 15 ~ 8℃

)

[3] = Array

(

[date]= 周四

[dayPictureUrl] =http://api.map.baidu.com/images/weather/day/duoyun.png

[nightPictureUrl] =http://api.map.baidu.com/images/weather/night/qing.png

[weather]= 多云转晴

[wind]= 北风3-4级

[temperature] = 14 ~ 6℃

)

)

)

)

)

<meta charset="UTF-8"
Array
(
   [error] = 0
   [status] = success
   [date] = 2014-03-17
   [results] = Array
       (
           [0] = Array
               (
                   [currentCity]= 上海
                   [weather_data]= Array
                       (
                           [0]= Array
                               (
                                  [date] = 周一(今天, 实时:19℃)
                                  [dayPictureUrl] =http://api.map.baidu.com/images/weather/day/qing.png
                                  [nightPictureUrl] =http://api.map.baidu.com/images/weather/night/qing.png
                                   [weather] = 晴
                                  [wind] = 西南风3-4级
                                  [temperature] = 13℃
                               )

                           [1] = Array
                               (
                                   [date]= 周二
                                  [dayPictureUrl] =http://api.map.baidu.com/images/weather/day/duoyun.png
                                  [nightPictureUrl] = http://api.map.baidu.com/images/weather/night/yin.png
                                   [weather]= 多云转阴
                                   [wind]= 东北风3-4级
                                  [temperature] = 24 ~ 9℃
                               )

                           [2] = Array
                               (
                                   [date]= 周三
                                  [dayPictureUrl] =http://api.map.baidu.com/images/weather/day/zhongyu.png
                                  [nightPictureUrl] = http://api.map.baidu.com/images/weather/night/xiaoyu.png
                                   [weather]= 中雨转小雨
                                   [wind]= 东北风3-4级
                                  [temperature] = 15 ~ 8℃
                               )

                           [3] = Array
                               (
                                   [date]= 周四
                                  [dayPictureUrl] =http://api.map.baidu.com/images/weather/day/duoyun.png
                                   [nightPictureUrl] =http://api.map.baidu.com/images/weather/night/qing.png
                                   [weather]= 多云转晴
                                   [wind]= 北风3-4级
                                  [temperature] = 14 ~ 6℃
                               )

                       )

               )

       )

)

7、PHP中自带了处理json格式字符串的内置函数,下面做一个事例,并给出完整代码:

[php] view plain copy print?

<metacharset="UTF-8"

<?php

//城市名

$city = '上海';

//获取json格式的数据

$str = file_get_contents("http://api.map.baidu.com/telematics/v3/weather?location=".$city."output=jsonak=5slgyqGDENN7Sy7pw29IUvrZ");

//对json格式的字符串进行编码

$arr = json_decode($str,TRUE);

echo "城市:".$arr['results'][0]['currentCity']." 日期:".$arr['date']."<br /<br /";

foreach($arr['results'][0]['weather_data']as $val)

{

echo $val['date']."<br/";

echo "天气:{$val['weather']}<br/";

echo "风向:{$val['wind']}<br/";

echo "温度:{$val['temperature']}<br/<br /";

}

?

<metacharset="UTF-8"
<?php
   //城市名
   $city = '上海';
 
   //获取json格式的数据
   $str = file_get_contents("http://api.map.baidu.com/telematics/v3/weather?location=".$city."output=jsonak=5slgyqGDENN7Sy7pw29IUvrZ");

   //对json格式的字符串进行编码
   $arr = json_decode($str,TRUE);      

   echo "城市:".$arr['results'][0]['currentCity']." 日期:".$arr['date']."<br /<br /";

   foreach($arr['results'][0]['weather_data']as $val)
   {
       echo $val['date']."<br/";
       echo "天气:{$val['weather']}<br/";
       echo "风向:{$val['wind']}<br/";
       echo "温度:{$val['temperature']}<br/<br /";
   }
?

8、返回的内容如下:


如何使用百度天气预报API接口

百度API Key申请地址:http://lbsyun.baidu.com/apiconsole/key

创建应用 如图:

提交后得到API Key ,运行结果如下:

扩展资料:

       API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。 

API函数包含在Windows系统目录下的动态连接库文件中。Windows API是一套用来控制Windows的各个部件的外观和行为的预先定义的Windows函数。

参考资料:百度百科-api接口

android怎样使用天气预报接口 实现天气预报

使用搜索引擎可以得到很多的天气预报接口,这里以某个api为例

http://wthrcdn.etouch.cn/WeatherApi

参数为city=城市名称

尝试获取南昌的天气预报

http://wthrcdn.etouch.cn/WeatherApi?city=南昌


得到下面xml数据

<?xml version="1.0" encoding="utf-8"?
<resp
  <city南昌</city
  <updatetime16:55</updatetime
  <wendu5</wendu
  <fengli3级</fengli
  <shidu90%</shidu
  <fengxiang北风</fengxiang
  <sunrise_106:54</sunrise_1
  <sunset_117:19</sunset_1
  <sunrise_2/
  <sunset_2/
  <environment
    <aqi26</aqi
    <pm2513</pm25
    <suggest各类人群可自由活动</suggest
    <quality优</quality
    <MajorPollutants/
    <o344</o3
    <co1</co
    <pm1014</pm10
    <so24</so2
    <no227</no2
    <time16:00:00</time
  </environment
  <yesterday
    <date_14日星期五</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_13-4级</fl_1
    </night_1
  </yesterday
  <forecast
    <weather
      <date5日星期六</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
      <date6日星期天</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
      <date7日星期一</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
      <date8日星期二</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
      <date9日星期三</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 = DocumentBuilderFactory.newInstance().newDocumentBuilder();
//is是网络连接得到的输入流
Document doc = builder.parse(is);
if(doc==null) throw new Exception();
Element element = doc.getDocumentElement();
NodeList childList = element.getChildNodes();
for(int i=0; i<childList.getLength(); i++){
Element e = (Element) childList.item(i);
String tag = e.getTagName();
String text = e.getTextContent();
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)){
//风向
}
}

我负责的app要实现天气预报实时功能,用什么接口好

气象数据开放平台 气象数据开放平台是中国气象局面向网络媒体、手机厂商、第三方气象服务机构等用户,通过web方式提供数据气象服务的官方载体。是国内首个面向个人网站、开发爱好者和服务机构的气象服务API.
http://openweather.weather.com.cn/
之前做过的项目就是采用的这一个 关于天气预报接口自动化测试和自动化播报天气的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 天气预报接口自动化测试的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于自动化播报天气、天气预报接口自动化测试的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java实现微信网页授权的示例代码
下一篇:spring 自动装配和aop的使用
相关文章

 发表评论

暂时没有评论,来抢沙发吧~