请给出淘宝商品详情API接口的使用示例

以下是一个使用淘宝商品详情API接口(taobao.item.get)的完整示例,包含请求参数配置、签名生成和HTTP请求发送的代码。示例以Python语言实现:


Python示例代码

python 复制代码
python
	import requests

	import hashlib

	import time

	from urllib.parse import urlencode

	 

	# 配置参数

	app_key = "your_app_key"  # 替换为你的AppKey

	app_secret = "your_app_secret"  # 替换为你的AppSecret

	url = "https://eco.taobao.com/router/rest"

	 

	# 请求参数

	params = {

	    "method": "taobao.item.get",

	    "app_key": app_key,

	    "timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),  # 当前时间戳

	    "format": "json",

	    "v": "2.0",

	    "sign_method": "md5",

	    "num_iid": "123456789",  # 商品ID,替换为实际商品ID

	    "fields": "num_iid,title,price,nick,pic_url,detail_url"  # 返回字段

	}

	 

	# 生成签名

	def generate_sign(params, secret):

	    """生成淘宝API签名"""

	    sorted_params = sorted(params.items())  # 按字典序排序

	    base_string = ''.join([f"{k}{v}" for k, v in sorted_params]) + secret  # 拼接参数+密钥

	    return hashlib.md5(base_string.encode('utf-8')).hexdigest().upper()

	 

	# 添加签名到参数

	params['sign'] = generate_sign(params, app_secret)

	 

	# 发送HTTP请求

	def call_taobao_api(url, params):

	    """

	    调用淘宝API并返回结果

	    """

	    try:

	        response = requests.get(url, params=params)

	        response.raise_for_status()  # 检查HTTP请求是否成功

	        return response.json()  # 返回JSON格式的响应

	    except requests.exceptions.RequestException as e:

	        print(f"HTTP请求失败: {e}")

	        return None

	 

	# 调用API并打印结果

	result = call_taobao_api(url, params)

	if result:

	    print("API调用成功,返回结果:")

	    print(result)

	else:

	    print("API调用失败。")

代码说明

  1. 参数配置

    • method:固定为taobao.item.get
    • num_iid:商品ID,需替换为实际商品的ID。
    • fields:指定返回的字段,如title(标题)、price(价格)等。
  2. 签名生成

    • 按字典序排序参数,拼接成字符串后附加AppSecret,使用MD5加密生成签名。
  3. HTTP请求

    • 使用requests库发送GET请求,携带所有参数(包括签名)。
  4. 错误处理

    • 捕获网络错误或API返回的错误码,并进行相应处理。

运行结果示例

假设商品ID为123456789,运行代码后可能返回如下结果:

成功返回

json 复制代码
json
	{

	  "item_get_response": {

	    "item": {

	      "num_iid": "123456789",

	      "title": "示例商品标题",

	      "price": "88.88",

	      "nick": "卖家昵称",

	      "pic_url": "https://img.alicdn.com/xxx.jpg",

	      "detail_url": "https://item.taobao.com/item.htm?id=123456789"

	    }

	  }

	}

失败返回

markdown 复制代码
json
	{

	  "error_response": {

	    "code": 15,

	    "msg": "用户未授权访问该应用"

	  }

	}

注意事项

  1. 时间戳格式timestamp需为yyyy-MM-dd HH:mm:ss格式。
  2. 签名规则:必须严格按淘宝API签名规则生成。
  3. 字段选择fields参数可指定需要返回的字段,避免请求不必要的数据。

通过以上代码,开发者可以快速调用淘宝商品详情API接口,获取商品的详细信息,并将其集成到自己的应用中。

相关推荐
5G微创业4 小时前
Python / Node.js 调用短视频去水印 API 完整示例(含 SDK)
python·node.js·音视频·api·sdk·短视频
用户7783366132111 天前
serpbase + GraphQL wrapper 实战:让 SERP 数据走 GraphQL schema
数据库·api
星核0penstarry2 天前
Coding Plan vs 运营商Token Plan:先选对赛道,再谈性价比
大模型·api
用户7783366132112 天前
4 种 SERP 监控告警方式对比:Slack / Email / Webhook / SMS
api
dogstarhuang4 天前
从 0 到 1 搭建可收费的 API 开放平台(实战)
java·架构·api
林小果14 天前
用 Codex 做一个 API 地址诊断器:Claude Code、Codex、Gemini CLI 的 /v1 排错实战
api·ai编程·codex·claude code·gemini cli·base url·linkagi
荡神咩4 天前
windows系统使用glm将claude接入PyCharm2026
pycharm·api
用户7783366132114 天前
SERP API + Server-Sent Events 实时流式推送实战
api
豌豆学姐4 天前
likeadmin-api 视频生成工作流实战:Seedance 2.0 接口从素材到任务查询
aigc·音视频·api·视频生成·likeadmin-api
ServBay5 天前
AI Gateway 指南,如何用统一网关管理多模型 API
aigc·api·ai编程