全部
常见问题
产品动态
精选推荐

淘宝批量获取商品SKU实战案例

管理 管理 编辑 删除


一、核心方案:调用淘宝开放平台API

1. 注册与认证

2. API调用流程

(1) 选择接口

  • 推荐接口taobao.item.sku.get(直接获取SKU信息)或taobao.item_get(获取商品详情,含SKU)。
  • 接口文档淘宝开放API文档

(2) 构造请求

  • 请求URL:淘宝开放API测试平台
  • 参数示例: csharp 体验AI代码助手 代码解读复制代码python params = { "method": "taobao.item.sku.get", "app_key": "你的App Key", "timestamp": "2025-07-09 12:00:00", "format": "json", "v": "2.0", "sign_method": "md5", "num_iid": "商品ID", # 例如:652874751412 "fields": "sku.price,sku.properties,sku.quantity" # 指定返回字段 }

(3) 生成签名

  • 签名算法:按淘宝规范对参数进行排序、拼接并MD5加密。 scss 体验AI代码助手 代码解读复制代码python import hashlib def generate_sign(params, app_secret): params_sorted = sorted(params.items()) query_string = app_secret + ''.join([f"{k}{v}" for k, v in params_sorted]) + app_secret return hashlib.md5(query_string.encode()).hexdigest().upper()

(4) 发送请求

  • Python代码示例: python 体验AI代码助手 代码解读复制代码python import requests import json app_key = "你的App Key" app_secret = "你的App Secret" num_iid = "商品ID" # 替换为实际商品ID # 构造请求参数 params = { "method": "taobao.item.sku.get", "app_key": app_key, "timestamp": "2025-07-09 12:00:00", "format": "json", "v": "2.0", "sign_method": "md5", "num_iid": num_iid, "fields": "sku.price,sku.properties,sku.quantity" } # 生成签名 sign = generate_sign(params, app_secret) params["sign"] = sign # 发送请求 response = requests.get("https://eco.taobao.com/router/rest", params=params) result = response.json() # 解析SKU数据 if result.get("error_response"): print(f"Error: {result['error_response']['msg']}") else: skus = result.get("item_sku_get_response", {}).get("skus", {}).get("sku", []) for sku in skus: print(f"SKU属性: {sku['properties']}, 价格: {sku['price']}, 库存: {sku['quantity']}")

3. 数据存储

  • 保存为CSV: python 体验AI代码助手 代码解读复制代码python import csv with open("skus.csv", "w", newline='', encoding='utf-8') as f: writer = csv.writer(f) writer.writerow(["商品ID", "SKU属性", "价格", "库存"]) for sku in skus: writer.writerow([num_iid, sku['properties'], sku['price'], sku['quantity']])

二、第三方工具方案(备选)

1. 工具选择

  • 鼎点数据:支持淘宝/天猫SKU价格监控,提供API接口。
  • 奇点数据:实时价格预警,适合竞品分析。

2. 使用步骤

  1. 注册工具账号,绑定淘宝店铺。
  2. 配置监控任务:输入商品链接,选择SKU监控字段。
  3. 导出数据:通过工具后台下载CSV或调用API获取数据。

三、注意事项

  1. 合规性: 遵守淘宝开放平台调用规则,避免高频调用(建议QPS≤1)。 禁止聚合多店铺数据,仅限授权店铺使用。
  2. 错误处理: 签名错误:检查参数排序及MD5计算。 权限不足:在开放平台提交API权限申请。
  3. 性能优化: 批量处理:通过taobao.items.onsale.get获取商品列表,再逐个调用SKU接口。 缓存机制:对已获取的SKU数据缓存,减少重复请求。

四、实战案例:批量获取某店铺商品SKU

1. 场景

  • 需求:获取某淘宝店铺所有在售商品的SKU信息。
  • 步骤: 调用taobao.items.onsale.get获取商品列表。 遍历商品ID,调用taobao.item.sku.get获取每个商品的SKU。 合并数据并保存。

2. 代码示例(简化版)

python
# 获取在售商品列表
def get_onsale_items(app_key, app_secret):
    params = {
        "method": "taobao.items.onsale.get",
        "app_key": app_key,
        "timestamp": "2025-07-09 12:00:00",
        "format": "json",
        "v": "2.0",
        "sign_method": "md5",
        "fields": "num_iid,title"
    }
    sign = generate_sign(params, app_secret)
    params["sign"] = sign
    response = requests.get("https://eco.taobao.com/router/rest", params=params)
    return response.json().get("items_onsale_get_response", {}).get("items", {}).get("item", [])
 
# 批量获取SKU
app_key = "你的App Key"
app_secret = "你的App Secret"
items = get_onsale_items(app_key, app_secret)
 
all_skus = []
for item in items:
    num_iid = item["num_iid"]
    skus = get_sku_info(app_key, app_secret, num_iid)  # 调用前文函数
    all_skus.extend(skus)
 
# 保存数据
with open("all_skus.csv", "w", newline='', encoding='utf-8') as f:
    writer = csv.writer(f)
    writer.writerow(["商品ID", "商品标题", "SKU属性", "价格", "库存"])
    for sku in all_skus:
        writer.writerow([sku["num_iid"], sku["title"], sku["properties"], sku["price"], sku["quantity"]])

五、总结

通过淘宝开放平台API可合法、高效地批量获取商品SKU信息,适用于数据分析、库存管理等场景。需严格遵守平台规范,合理控制请求频率,确保数据合规性。第三方工具可作为补充方案,但需注意数据授权与隐私保护。

作者:蓝倾
链接:https://juejin.cn/post/7524641787418443815
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

请登录后查看

OneLafite 最后编辑于2025-07-09 16:19:38

快捷回复
回复
回复
回复({{post_count}}) {{!is_user ? '我的回复' :'全部回复'}}
排序 默认正序 回复倒序 点赞倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理员 企业

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推荐': '推荐'}}
{{item.is_suggest == 1? '取消推荐': '推荐'}}
沙发 板凳 地板 {{item.floor}}#
{{item.user_info.title || '暂无简介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打赏
已打赏¥{{item.reward_price}}
{{item.like_count}}
{{item.showReply ? '取消回复' : '回复'}}
删除
回复
回复

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回复 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打赏
已打赏¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回复' : '回复'}}
删除
回复
回复
查看更多
打赏
已打赏¥{{reward_price}}
128
{{like_count}}
{{collect_count}}
添加回复 ({{post_count}})

相关推荐

快速安全登录

使用微信扫码登录
{{item.label}} 加精
{{item.label}} {{item.label}} 板块推荐 常见问题 产品动态 精选推荐 首页头条 首页动态 首页推荐
取 消 确 定
回复
回复
问题:
问题自动获取的帖子内容,不准确时需要手动修改. [获取答案]
答案:
提交
bug 需求 取 消 确 定
打赏金额
当前余额:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
请输入 0.1-{{reward_max_price}} 范围内的数值
打赏成功
¥{{price}}
完成 确认打赏

微信登录/注册

切换手机号登录

{{ bind_phone ? '绑定手机' : '手机登录'}}

{{codeText}}
切换微信登录/注册
暂不绑定
CRMEB客服

CRMEB咨询热线 咨询热线

400-8888-794

微信扫码咨询

CRMEB开源商城下载 源码下载 CRMEB帮助文档 帮助文档
返回顶部 返回顶部
CRMEB客服