最近负责的项目,需要对接淘宝提供的 淘宝api,获取淘宝客的订单数据。在此过程中遇到了很多坑,特在此mark一下,可能对于一些大佬来说很简单,如果发现有错误欢迎指出。所有过程如下所示:
基于Intellij IDEA 创建Maven项目
将淘宝API依赖的jar包安装到本地maven仓库
根据公开的请求实例编写java脚本,获取返回的订单数据(Jason格式)
以javabean的形式解析json,并写到本地csv文件中
通过Maven将项目达成jar包,上传到开发机上。
编写shell脚本:执行jar包,并将生成的csv文件load到hive表中(作为fact层的明细数据)
通过crontab命令,后台定期执行shell脚本。
将订单数据与跳转数据关联,得到跳转pv/uv、转化率等指标。
下面针对每一步进行介绍,并说明遇到的坑
创建Maven项目
鉴于maven的依赖管理优势,先利用Intellij IDEA 创建maven项目。
安装jar包到本地仓库
因为本项目依赖淘宝api的jar包,需要下载相应的sdk,其中提供了API的请求封装、摘要签名、响应解释、消息监听等功能,使用SDK可以轻松完成API的调用,API结果的获取,消息的实时监听。
这里遇到了第一个坑:一开始考虑到python对jason的解析更方便(本人对python也更熟悉。。),想使用python写,但是调api时需要提供port,然而没拿到,最后还是使用了java。
使用淘宝api的步骤:(官方文档介绍&