淘宝商品详情接口(APP商品详情采集接口,H5商品详情采集接口)

92 阅读2分钟

淘宝商品详情接口是淘宝开放平台为开发者提供的获取商品详细信息的接口,APP 和 H5 商品详情采集接口有所不同,以下是具体介绍:

APP 商品详情采集接口

  • 接口地址o0b.cn/iturbo
  • 请求参数
    • method:接口方法名,固定为 “mtop.taobao.detail.getdetail”。
    • appKey:应用 Key,必填。
    • t:时间戳,必填。
    • sign:签名,用于验证请求合法性,必填。
    • v:版本号,必填。
    • data:请求数据,包含商品 ID 等信息,如{"itemNumId":"商品ID","detail_v":"8.0.0","umpChannel":"null","spm":"a2141.7631565","bc_fl_src":"cross_frm_tb_src"}
  • 示例代码
def get_app_item_detail(item_id):
    # 基础参数
    api_url = "https://api.m.taobao.com/rest/api3.do"
    app_key = "你的AppKey"
    app_secret = "你的AppSecret"
    t = str(int(time.time() * 1000))
    # 构造请求数据
    data = {
        "itemNumId": str(item_id),
        "detail_v": "8.0.0",
        "umpChannel": "null",
        "spm": "a2141.7631565",
        "bc_fl_src": "cross_frm_tb_src"
    }
    # 生成签名
    sign_str = f'{app_secret}appKey{app_key}data{json.dumps(data)}methodmtop.taobao.detail.getdetailt{t}v1.0{app_secret}'
    sign = hashlib.md5(sign_str.encode('utf - 8')).hexdigest().upper()
    # 请求参数
    params = {
       'method':'mtop.taobao.detail.getdetail',
        'appKey': app_key,
        't': t,
       'sign': sign,
        'v': '1.0',
        'data': json.dumps(data)
    }
    try:
        response = requests.get(api_url, params=params)
        result = response.json()
        return result
    except Exception as e:
        print(f"请求失败: {e}")
        return None
# 使用示例
item_id = "602100000000"
detail = get_app_item_detail(item_id)
print(detail)

H5 商品详情采集接口

  • 接口地址: o0b.cn/iturbo
  • 请求参数
    • data:加密的请求数据,如{"itemNumId":"商品ID","exParams":{"id":"商品ID"},"detail_v":"8.0.0"}

    • jsv:JavaScript 版本号。

    • appKey:应用 Key。

    • t:时间戳。

    • sign:签名。

    • api:固定为 “mtop.taobao.detail.getdetail”。

    • v:版本号。

    • type:数据类型,通常为 “jsonp”。

    • dataType:数据类型,通常为 “jsonp”。

示例代码:

def get_h5_item_detail(item_id):
    # 基础参数
    api_url = "https://h5api.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/"
    app_key = "你的AppKey"
    t = str(int(time.time() * 1000))
    # 构造请求数据
    data = {
        "itemNumId": str(item_id),
        "exParams": json.dumps({"id": str(item_id)}),
        "detail_v": "8.0.0"
    }
    # 签名参数
    sign_str = f'{app_key}&{t}&{"12574478"}&{json.dumps(data)}'
    sign = hashlib.md5(sign_str.encode('utf - 8')).hexdigest()
    # 请求头
    headers = {
        'User - Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1',
    }
    # 请求参数
    params = {
        'jsv': '2.5.1',
        'appKey': app_key,
        't': t,
       'sign': sign,
        'api':'mtop.taobao.detail.getdetail',
        'v': '6.0',
        'type': 'jsonp',
        'dataType': 'jsonp',
        'data': json.dumps(data)
    }
    try:
        response = requests.get(api_url, params=params, headers=headers)
        result = response.json()
        return result
    except Exception as e:
        print(f"请求失败: {e}")
        return None
# 使用示例
item_id = "602100000000"
detail = get_h5_item_detail(item_id)
print(detail)