请给出淘宝商品详情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接口,获取商品的详细信息,并将其集成到自己的应用中。

相关推荐
ShineWinsu1 天前
对于Qt:QPushButton常见属性的解析
开发语言·c++·qt·api·gui·按钮·qpushbutton
星核0penstarry2 天前
企业 API 向后兼容实战:版本控制、废弃字段通知与灰度发布策略
人工智能·后端·api·接口隔离原则·版本控制·架构设计·后端架构
treasure1402 天前
Django复习笔记(2026年10月)
后端·python·django·api·web·drf
用户298698530143 天前
Python 将 Word 文档转换为 XML 的实践要点
后端·python·api
用户298698530144 天前
Python 实战:Markdown 转 PDF 的代码实现与页面设置
python·api·markdown
Tanshu_API君4 天前
白银期货行情数据接入:从上海期货交易所合约到实时报价
api·金属·白银·白银价格·白银历史价格
EnCi Zheng5 天前
后端怎么把AI接口稳定安全低成本接进业务:超时重试、密钥隔离与成本熔断清单
人工智能·后端·安全·架构·api
千木SilvaMux5 天前
10款国产模型写离职证明实测:为什么两极分化
llm·api
用户298698530146 天前
Python 实现 Markdown 与 Word 文档互转
python·api·markdown
むはちひつなゃ初见6 天前
LLM API 上线 FAQ 与排障清单:从 401/429 到 fallback 验收
llm·api·故障排查