当前位置: 首页 > news >正文

python采集商品详情数据接口json数据返回参考

以下是使用Python采集商品详情数据时,常见电商平台(淘宝、京东、拼多多)的JSON接口返回数据参考,以及对应的采集代码示例和注意事项。


一、淘宝商品详情API返回JSON参考

1. 基础商品信息

{
"code": 200,
"msg": "success",
"data": {
"item": {
"id": "123456789",
"title": "2025新款智能手表旗舰版",
"price": "1299.00",
"original_price": "1599.00",
"shop_name": "XX品牌旗舰店",
"main_image": "https://img.alicdn.com/xxx_main.jpg",
"detail_url": "https://item.taobao.com/item.htm?id=123456789"
}
}
}

2. 完整商品详情(含SKU、促销)

{
"code": 200,
"data": {
"item": {
"id": "123456789",
"title": "2025新款智能手表旗舰版",
"price": "1299.00",
"skus": [
{
"sku_id": "sku_001",
"price": "1299.00",
"properties": "颜色:黑色;尺寸:标准版",
"stock": 150
}
],
"coupon_info": {
"amount": "100.00",
"condition": "满1000元可用"
},
"promotions": [
{ "type": "满减", "desc": "满1000减100" }
]
}
}
}

二、京东商品详情API返回JSON参考

1. 基础商品信息

{
"code": 200,
"message": "success",
"data": {
"goods_response": {
"sku_id": "100012345678",
"name": "华为Mate 50 Pro 5G手机",
"price": 5999.00,
"original_price": 6999.00,
"image_path": "https://img10.360buyimg.com/n1/s450x450_jfs/t1/123456/78/12345/123456/12345678/1234567890abcdef.jpg"
}
}
}

2. 商品SKU详情

{
"code": 200,
"data": {
"goods_skus_response": {
"sku_id": "100012345678",
"sku_list": [
{
"sku_id": "100012345678",
"name": "华为Mate 50 Pro 5G手机 曜金黑 8GB+128GB",
"price": 5999.00,
"stock_state": 1
}
]
}
}
}

 


四、Python采集代码示例

1. 淘宝商品采集(使用requests

import requests
import hashlib
import time
def get_taobao_item(app_key, app_secret, item_id):
url = "https://api.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",
"num_iid": item_id,
"fields": "id,title,price,skus"
}
params["sign"] = generate_taobao_sign(params, app_secret)
response = requests.get(url, params=params)
return response.json()
def generate_taobao_sign(params, app_secret):
sorted_params = sorted(params.items(), key=lambda x: x[0])
sign_str = app_secret + "".join([f"{k}{v}" for k, v in sorted_params]) + app_secret
return hashlib.md5(sign_str.encode("utf-8")).hexdigest().upper()
# 调用示例
data = get_taobao_item("your_app_key", "your_app_secret", "123456789")
print(data)

2. 京东商品采集(使用requests

import requests
import hashlib
import time
def get_jd_item(app_key, app_secret, sku_id):
url = "https://api.jd.com/routerjson"
params = {
"method": "jd.item.get",
"app_key": app_key,
"access_token": "your_access_token",
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
"v": "2.0",
"sku_id": sku_id
}
params["sign"] = generate_jd_sign(params, app_secret)
response = requests.get(url, params=params)
return response.json()
def generate_jd_sign(params, app_secret):
sorted_params = sorted(params.items(), key=lambda x: x[0])
params_str = "&".join([f"{k}={v}" for k, v in sorted_params])
sign_str = f"{app_secret}{params_str}{app_secret}"
return hashlib.md5(sign_str.encode("utf-8")).hexdigest().upper()
# 调用示例
data = get_jd_item("your_app_key", "your_app_secret", "100012345678")
print(data)

http://www.dtcms.com/a/270324.html

相关文章:

  • 前端面试常考题目详解​
  • 解决阿里云ubuntu内存溢出导致vps死机无法访问 - 永久性增加ubuntu的swap空间 - 阿里云Linux实例内存溢出(OOM)问题修复方案
  • (四)机器学习小白入门YOLOv :图片标注实操手册
  • 深度学习环境配置:PyTorch、CUDA和Python版本选择
  • 工作中的思考
  • 推荐系统中的相似度
  • 【计算机网络】第三章:数据链路层(上)
  • Redis常用数据结构以及多并发场景下的使用分析:Sorted List类型
  • (电机03)分享FOC控制中SVPWM的输出关联硬件
  • 【6G新技术探索】A2A协议介绍
  • 数据出海的隐形冰山:企业如何避开跨境传输的“合规漩涡”?
  • BM10 两个链表的第一个公共结点
  • main(int argc,char **agrv)的含义
  • Kubernetes配置管理
  • Vue3组合式API应用:状态共享与逻辑复用最佳实践
  • 说说SpringBoot常用的注解?
  • [Datawhale AI夏令营]大模型技术-基于带货视频评论的用户洞察挑战赛上分分享
  • React Native 一些API详解
  • 【ElasticSearch实用篇-02】基本增删改查
  • LoRaWAN 有几种入网方式?
  • 4. 那在详细说一下 http 2.0 的特点
  • WinUI3入门16:Order自定义排序
  • ACE-Step:AI音乐生成基础模型
  • 代码详细注释:基于log.h的自定义日志库实现
  • 探索下一代云存储技术:对象存储、文件存储与块存储的区别与选择
  • Splunk练习 Boss of the SOC V1
  • 短视频矩阵系统的崛起:批量发布功能与多平台矩阵的未来
  • LeetCode 21. 合并两个有序链表
  • C#Halcon从零开发_Day18_OCR识别
  • 4. isaac sim4.2 教程-Core API-Hello robot