Kettle通过Webservice获取天气信息
需求:
通过kettle工具,通过webservice获取天气信息,写成xml格式文件。
思路:
Kettle可通过两种选择获取webservice结果,一种是web服务查询(web service lookup),还一种是利用HTTP POST,本文介绍的是使用web服务查询的方式,数据来源为http://www.webxml.com.cn/WebServices/WeatherWebService.asmx。
实现步骤:
检查http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl,确认需要调用的webservice接口,相关请求和响应。
如上图所示,请求的参数为theCityName,string型。
响应为getWeatherbyCityNameResult,ArrayOfString型。
因此实现方法如下:
生成记录
主要配置"限制"为1,即生成一条记录,用于下一步参数所需即可。
Web 服务查询
输入url后加载,选择getWeatherbyCityName操作。
注意v2.x/3.0兼容模式要取消勾选。
注意此处输出选择了getWeatherbyCityNameResult的ArrayOfstring类型,将信息一次输出,如果通过"获取字段",只能获得一行记录。
Xml文件输出
"内容","字段"页保持默认即可。
文本文件输出
注意"头部"取消了勾选状态
结果检查:
执行后,两个文件输出的内容分别为(截图):
后续:
可通过读取xml数据,将天气相关信息写入仓库维表。