如何获取淘宝天猫商品的详情图数据

(2020年12月)由于近期获取淘宝实时数据越来越难,有很多的数据渠道被禁,所以笔者特地更新一下此帖,长久以来笔者一直是使用下文提到的TaoAPI,还是一如既往的可以快速调用,而且近期还上线了不限调用次数的包月服务。

↓以下是之前发布的文章内容↓


接上篇文章实时同步获取淘宝商品的SKU数据,这里接着讲如何获取淘宝天猫商品的详情图数据:同样的是基于淘宝商品ID发起接口调用,获取详情图地址的数据信息,以供前端生成详情描述图。接口信息:

请求地址:https://taoapi.ndxiu.com/service/get_detail.php

请求方式:get

请求示例:{tid:'淘宝商品id',appkey:'专属appkey',sign:'签名参数'}

建议场景:为了保证接口调用效率,建议在客户端使用ajax方法发起调用。

  如何获取淘宝天猫商品的详情图数据

请求参数信息

  如何获取淘宝天猫商品的详情图数据

接口返回的信息

接口返回的信息包括了详情图地址列表,通过jq可以构造出详情描述。

服务端生成签名参数(以PHP为例):

//这里是您自己的鉴权代码,通过鉴权后才开始下面的签名

$appkey = 'tbw******'; //这里填写您的appkey

$appsecret = '******'; //这里填写您的appsecret

$noncestr = getNonceStr(6); //生成随机字符串

$date = date('Y-m-d'); //生成日期

$signature = getSignature($appkey,$appsecret,$date,$tid); //生成签名

echo json_encode(array('tid'=>$tid,'appkey'=>$appkey,'sign'=>$signature)); //输出json字符串到客户端

//通过md5加密生成签名的函数

function getSignature($appkey,$appsecret,$date,$tid){

    $string = $appkey.$appsecret.$date.$tid;

    $md5 = md5($string);

    return $md5;

}

何时开始签名?当您的用户访问商品详情页时发起签名,将签名直接跟页面一起返回。

客户端使用ajax发起调用:

function getDetail(tid,appkey,sign){ //传入的实参建议不要暴露给全局

    $.ajax({

        type: 'GET', //使用GET请求方式

        async: false,

        url: 'https://taoapi.ndxiu.com/service/get_detail.php',

        data: {

            tid:tid,

            appkey:appkey,

            sign:sign

        },

        dataType: 'jsonp', //解决跨域调用问题

        jsonp: 'callback',

        jsonpCallback: 'showDetail',

        success: function(jsonp){

            //生成并显示详情图

        },

        error: function(){}

    });

}

需要注意当客户端请求详情时时间点刚好跨到第二天的情况,返回0019错误(签名参数无效),此时请重新生成签名重复请求一次即可。

以上的get_detail接口需要前往taoapi.ndxiu.com注册申请。

笔者的另外文章:

1、实时同步获取淘宝商品的SKU数据

2、实时获取淘宝天猫商品的评价晒单数据

3、实时快速获取物流进度信息

4、使用JQ开发仿淘宝SKU选择器(待更)

上一篇:MUI页面传值取值


下一篇:MySql优化分析