在此以京东商品相关数据采集API接口为例
- item_get 获得JD商品详情
- item_search 按关键字搜索商品
- item_search_img 按图搜索京东商品(拍立淘)
- item_search_shop 获得店铺的所有商品
- item_history_price 获取商品历史价格信息
- item_recommend 获取推荐商品列表
- buyer_order_list 获取购买到的商品订单列表
- buyer_order_datail 获取购买到的商品订单详情
- upload_img 上传图片到JD
- item_review 获得JD商品评论
- cat_get 获得jd商品分类
签名生成
- 准备参数:在调用淘宝商品图片 API 时,通常需要准备以下参数:
- App Key测试:作为 API 使用者身份的凭证,在淘宝开放平台创建应用后获得。
- Timestamp:用于防止请求重放攻击,一般为当前的日期和时间,格式通常为
YYYY-MM-DD HH:MM:SS
。 - 其他业务参数:如商品 ID 等与具体业务相关的参数,例如调用 “JD.item.get” 接口获取商品主图时,“num_iid” 参数指定商品的数字 ID
二、核心接口:商品详情采集(item_get 类似接口)
1. 接口功能
- 获取单个商品的详细信息,包括商品 ID、标题、价格、品牌、分类、图片、SKU 列表、等。
2. 公共参数
名称 | 类型 | 必须 | 描述 |
---|---|---|---|
key | String | 是 | 调用key(必须以GET方式拼接在URL中) |
secret | String | 是 | 调用密钥 |
api_name | String | 是 | API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等] |
cache | String | 否 | [yes,no]默认yes,将调用缓存的数据,速度比较快 |
result_type | String | 否 | [json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读 |
lang | String | 否 | [cn,en,ru]翻译语言,默认cn简体中文 |
version | String | 否 | API版本 |
3. 签名生成规则
京东 API 采用 HMAC-SHA256 签名算法,步骤如下:
- 按参数名 ASCII 码升序排列所有请求参数(除
sign
外),拼接成key=value
格式的字符串。 - 在字符串前后拼接
App Secret
(即secret + 拼接字符串 + secret
)。 - 对拼接后的字符串进行 SHA256 哈希,生成最终签名(需转为大写)。
# coding:utf-8
"""
Compatible for python2.x and python3.x
requirement: pip install requests
"""
from __future__ import print_function
import requests
# 请求示例 url 默认请求参数已经做URL编码
# 封装好API供应商demo url=o0b.cn/ibrad, wechat : TaoxiJd 复制链接获取测试
# 小编: TaoxiJd-api 前往体验API:o0b.cn/ibrad
url = “key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=10335871600&domain_type=jd"
headers = {
"Accept-Encoding": "gzip",
"Connection": "close"
}
if __name__ == "__main__":
r = requests.get(url, headers=headers)
json_obj = r.json()
print(json_obj)
三、代码示例(Python)
1. 接口调用流程
{
"items": {
"page": "1",
"real_total_results": "13",
"total_results": "13",
"page_size": 10,
"pagecount": "3",
"_ddf": "szx",
"item": [
{
"title": "黄金香无添加剂猪肉绒",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01XcpM1O1Pf8VBSz2rU_!!6000000001867-0-sm.jpg",
"promotion_price": "79.00",
"orginal_price": "79.00",
"price": "79.00",
"sales": 0,
"num_iid": "720686218372",
"seller_id": "725677994",
"detail_url": "https://item.taobao.com/item.htm?id=720686218372"
},
{
"title": "黄金香老字号招牌营养猪肉绒500g寿司烘焙肉松老人儿童早餐猪肉松",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN012zWHLs2IlMfmHMpar_!!2218029889326.jpg",
"promotion_price": "68.30",
"orginal_price": "68.30",
"price": "68.30",
"sales": 0,
"num_iid": "804964622085",
"seller_id": "2218029889326",
"detail_url": "https://item.taobao.com/item.htm?id=804964622085"
},
{
"title": "黄金香老字号招牌营养猪肉绒500g寿司烘焙肉松老人儿童早餐猪肉松",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01Hoemjp2DuSX7QU51c_!!4611686018427383501-0-item_pic.jpg",
"promotion_price": "119.60",
"orginal_price": "119.60",
"price": "119.60",
"sales": 0,
"num_iid": "902332828102",
"seller_id": "2219529439065",
"detail_url": "https://item.taobao.com/item.htm?id=902332828102"
},
{
"title": "黄金香老字号招牌营养猪肉绒500g寿司烘焙肉松老人儿童早餐猪肉松",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01zhvQuR2GvmX9JkqZr_!!4611686018427385398-0-item_pic.jpg",
"promotion_price": "91.90",
"orginal_price": "91.90",
"price": "91.90",
"sales": 0,
"num_iid": "911581791874",
"seller_id": "2219082755054",
"detail_url": "https://item.taobao.com/item.htm?id=911581791874"
},
{
"title": "黄金香老字号招牌营养猪肉绒500g寿司烘焙肉松老人儿童早餐猪肉松",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01Gw5baS212AAvmCCDs_!!2218898946926.jpg",
"promotion_price": "119.60",
"orginal_price": "119.60",
"price": "119.60",
"sales": 0,
"num_iid": "869171431282",
"seller_id": "2218898946926",
"detail_url": "https://item.taobao.com/item.htm?id=869171431282"
},
{
"title": "黄金香单片包装午餐肉36g×5袋",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01EvWPZr1i88fN238vK_!!6000000004367-0-sm.jpg",
"promotion_price": "59.00",
"orginal_price": "59.00",
"price": "59.00",
"sales": 0,
"num_iid": "742893951632",
"seller_id": "725677994",
"detail_url": "https://item.taobao.com/item.htm?id=742893951632"
},
{
"title": "黄金香厦门特产早餐零食金丝肉松",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01jLfNlI1vzLcJrae7m_!!0-item_pic.jpg",
"promotion_price": "129.00",
"orginal_price": "129.00",
"price": "129.00",
"sales": 0,
"num_iid": "14124757541",
"seller_id": "594726243",
"detail_url": "https://item.taobao.com/item.htm?id=14124757541"
},
{
"title": "黄金香黑猪午餐肉36g×25袋",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01W3dgge1rhhy5TaThI_!!6000000005663-0-sm.jpg",
"promotion_price": "259.00",
"orginal_price": "259.00",
"price": "259.00",
"sales": 0,
"num_iid": "750620016960",
"seller_id": "725677994",
"detail_url": "https://item.taobao.com/item.htm?id=750620016960"
},
{
"title": "黄金香老字号午餐肉36g×15袋",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01Mj9iA71l3373iWvAj_!!6000000004762-0-sm.jpg",
"promotion_price": "159.00",
"orginal_price": "159.00",
"price": "159.00",
"sales": 0,
"num_iid": "750734657002",
"seller_id": "725677994",
"detail_url": "https://item.taobao.com/item.htm?id=750734657002"
},
{
"title": "黄金香玉米味黑猪午餐肉36g×5袋",
"pic_url": "https://img.alicdn.com/img/bao/uploaded/i4/O1CN01bFyWqY1nEcLf5BBWt_!!6000000005058-0-sm.jpg",
"promotion_price": "59.00",
"orginal_price": "59.00",
"price": "59.00",
"sales": 0,
"num_iid": "788135806724",
"seller_id": "725677994",
"detail_url": "https://item.taobao.com/item.htm?id=788135806724"
}
],
"item_weight_update": 0
},
"error_code": "0000",
"reason": "ok",
"secache": "45bbee2fa06a3b93da048c4db78c4bca",
"secache_time": 1744948338,
"secache_date": "2025-04-18 11:52:18",
"translate_status": "",
"translate_time": 0,
"language": {
"default_lang": "cn",
"current_lang": "cn"
},
"error": "",
"cache": 0,
"api_info": "today:3 max:10000 all[65=3+1+61];expires:2030-10-30",
"execution_time": "3.321",
"server_time": "Beijing/2025-04-18 11:52:18",
"client_ip": "117.44.142.101",
"call_args": {
"q": "黄金香老字号招牌营养猪肉绒",
"start_price": "0",
"end_price": "0",
"page": "1",
"cat": "0"
},
"api_type": "taobao",
"translate_language": "zh-CN",
"translate_engine": "google_new",
"server_memory": "4.37MB",
"request_id": "gw-3.6801cc6f51cea",
"last_id": "4292984242"
}
2. 响应数据解析
{
"jingdong": {
"item": {
"sku": "100012345678",
"title": "小米 Redmi Note 12 5G 智能手机",
"price": {
"currentPrice": "1599.00", # 当前价格
"originalPrice": "1799.00" # 原价
},
"brand": {
"brandId": "1363",
"brandName": "小米"
},
"stock": {
"stockNum": 100, # 库存数量
"stockStatus": 1 # 库存状态(1=有货,2=无货)
},
"skus": [ # SKU列表(多规格商品)
{
"skuId": "100012345678",
"color": "蓝色",
"memory": "8GB+128GB"
}
]
}
},
"error_code": 0, # 0表示成功,非0为错误码
"error_msg": ""
}
通过以上方案,可合法、高效地采集京东商品数据。建议先从单个商品接口入手,逐步扩展到批量数据处理,确保接口调用的稳定性和合规性。