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

怎么用Python 返回淘宝商品详情数据 的API 接口

管理 管理 编辑 删除

这个问题非常好问对了方向 👍。

不过要注意:淘宝商品详情接口属于阿里巴巴系的私有接口,不提供公开访问(淘宝防爬非常严),所以你不能直接用普通的 HTTP 爬虫请求 item.taobao.com 页面去拿详情数据,会被各种加密参数(_m_h5_tk, sign, data, t)挡住。

不过我们可以有三种合法、安全的实现方式👇:

一、使用 淘宝开放平台(阿里妈妈/阿里云)官方API

这是最稳定、合规的方式,官方提供商品搜索、详情、推广等API。

官方地址:

https://open.taobao.com

常用API接口:

功能接口名说明
商品详情taobao.tbk.item.info.get获取淘宝客商品详情
商品搜索taobao.tbk.item.get搜索商品列表
商品详情(通用)taobao.tbk.item.info.get根据 num_iids 获取商品详情


示例:Python 获取商品详情

import requests
import json
import time
import hashlib

# 你的 app_key 和 app_secret 从淘宝开放平台申请
app_key = '你的AppKey'
app_secret = '你的AppSecret'

def sign(params):
    # 签名算法(TOP API标准签名)
    items = sorted(params.items())
    query = app_secret + ''.join(f'{k}{v}' for k, v in items) + app_secret
    return hashlib.md5(query.encode('utf-8')).hexdigest().upper()

def get_taobao_item_info(num_iid):
    url = "https://eco.taobao.com/router/rest"
    params = {
        'method': 'taobao.tbk.item.info.get',
        'app_key': app_key,
        'timestamp': time.strftime("%Y-%m-%d %H:%M:%S"),
        'format': 'json',
        'v': '2.0',
        'sign_method': 'md5',
        'num_iids': num_iid,
        'session': '',  # 不需要授权的接口可以留空
    }
    params['sign'] = sign(params)
    resp = requests.get(url, params=params)
    return resp.json()

# 示例:获取一个商品详情
result = get_taobao_item_info("1234567890123")
print(json.dumps(result, indent=2, ensure_ascii=False))

输出示例:

{
  "tbk_item_info_get_response": {
    "results": {
      "n_tbk_item": [
        {
          "title": "Apple iPhone 15 Pro Max 手机",
          "pict_url": "https://img.alicdn.com/...",
          "zk_final_price": "8999.00",
          "item_url": "https://item.taobao.com/item.htm?id=1234567890123"
        }
      ]
    }
  }
}

二、使用阿里云的 “淘宝联盟API” 服务(更简单)

阿里云提供的「淘宝客开放平台」API代理服务:

👉 https://market.aliyun.com/products/56928004/cmapi014417.html

直接购买后会得到一个公共的 API Key,可以像下面这样用:

import requests

url = "https://api.taobaoapi.com/item_get"
params = {
    "apikey": "你的APIKey",
    "item_id": "1234567890123"
}
res = requests.get(url, params=params)
print(res.json())

输出会包括标题、主图、销量、价格、优惠券等字段。

三、如果你是要自建爬虫调试数据

淘宝详情页的真实数据是在:

https://h5api.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?data=...

但它有以下问题:

  • 需要 _m_h5_tk 与 sign 参数(JS动态生成)
  • Cookie 有时效性强(几分钟失效)
  • 页面字段全是加密字段名(apiStack, item, skuBase)

这类方式可以用于研究与学习,但不建议用于生产或商用,容易被封禁账号或IP。

推荐总结

需求推荐方案稳定性合规性
获取正式商品详情✅ 淘宝开放平台 API⭐⭐⭐⭐⭐✅ 官方
快速使用测试✅ 阿里云淘宝API代理⭐⭐⭐⭐✅ 合法
学习爬虫加密逆向⚙️ 模拟 H5 mtop 接口❌ 高风险


请登录后查看

小码二开 最后编辑于2025-10-06 10:22:53

快捷回复
回复
回复
回复({{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}}
63
{{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客服