【实验目的】
1.利用Kettle的“自定义常量数据”,“HTTP Client”组件,获取具有一定结构的网页内容,并使用。
2.熟练掌握“自定义常量数据”,“HTTP Client”,“JSON Input”组件的使用,实现网页内容的获取以及解析。
【实验原理】
通过“自定义常量数据”将需要访问的URL(网页地址)设置为常量,并将该常量传递给“HTTP Client”步骤以获取具有一定结构的网页内容的相应数据,然后使用“JSON Input”对内容进行解析,选取需要的数据,最后使用“Excel输出”步骤传递到本地的网页上进行展示。
【实验环境】
操作系统:Windows10
Kettle版本:7.1.0.0
jdk版本:1.8.0及以上版本
【实验步骤】
一、建立转换
双击spoon.bat打开kettle。(1)点击新建按钮,在下拉菜单中点击选择“转换”即可创建;(2)然后点击“保存”重命名该转换文件,保存在某个指定的路径;(3)选择输入步骤、输出步骤和跳。
二、各组件的配置
1.“自定义常量数据”的配置
Step1:双击‘自定义常量数据’组件,配置‘元数据’选项卡,设置常量名称和类型
Step2:配置‘数据’选项卡,设置常量对应的网站地址
2.“HTTP client”的配置:
双击“HTTP client”组件,勾选‘字段中选取URL’(重中之重)的请求,填写‘URL的名称’、‘编码格式’以及‘结果的字段名’。
3.“JSON Input”的配置:
Step1:双击‘JSON Input’组件,配置‘文件’选项卡,这里选取源定义在一个字段里
Step2:配置‘字段’选项卡,输入Jsonpath的路径以及输出结果的字段名称
4.“Excel的输出”配置
Step1:配置‘文件’选项卡,选取输出文件的名称和类型
Step2:配置‘字段’选项卡,获取字段并设置其类型(多余的字段可以删除)
三、执行转换
点击按钮,执行转换,结果如下:
四、实验结果:
输入文件‘preview data’:
输出文件‘test3_2.xls’:
五、实验过程中遇到的困难
HTTP Client组件无法读取网站地址,以及自定义常量的网站结果如下所示:
解决办法:上网查询相关资料后,对‘自定义常量’的‘数据’选项卡下的网站地址内容稍微进行了修改,结果如下:
六、实验总结
本次实验的目的主要是对HTTP Client获取网址的内容数据信息这个过程进行进一步实践操作,并且对有一定结构的文件使用Json的路径解析,输出期望的那部分数据。
本次实验过程中,进一步掌握了使用类似断点的爬虫操作来分析问题的主要原因,并且进一步提高了自身对问题的解决和寻找办法的能力。
附 件: