淘宝平台关键字搜索接口接入指南(含代码示例及商品标题解析)
淘宝开放平台(TOP)为开发者提供了丰富的API接口,其中关键字搜索接口(如taobao.tbk.dg.material.optional)允许通过关键词检索商品信息。本文将介绍如何接入该接口并解析返回结果中的标题等关键数据。
一、接口基本信息
接口名称:导购商品搜索接口(taobao.tbk.dg.material.optional)
功能描述:根据关键词返回符合条件的商品列表,包含标题、价格、销量等核心信息。
请求方式:HTTP GET/POST
返回格式:JSON
二、接入步骤
1. 申请开发者权限
注册淘宝开放平台账号(https://open.taobao.com)
创建应用并获取 App Key 和 App Secret
申请接口权限(需通过审核)
2. 接口请求参数(核心字段)
参数名 类型 必填 说明
q String 是 搜索关键词(如"手机")
adzone_id String 是 广告位ID(需提前创建)
page_no Int 否 页码(默认1)
page_size Int 否 每页数量(默认20,最大100)
sort String 否 排序方式(如"total_sales_desc")
三、Python代码示例
python
Copy Code
import requests
import hashlib
import time
import json
def search_taobao_items(keyword, app_key, app_secret, adzone_id):
url = "https://eco.taobao.com/router/rest"
timestamp = str(int(time.time()))
params = {
"method": "taobao.tbk.dg.material.optional",
"app_key": app_key,
"sign_method": "md5",
"timestamp": timestamp,
"format": "json",
"v": "2.0",
"q": keyword,
"adzone_id": adzone_id,
"page_no": 1,
"page_size": 20,
"sort": "total_sales_desc"
}
# 生成签名
param_str = ""
for k in sorted(params.keys()):
param_str += k + str(params[k])
sign_str = app_secret + param_str + app_secret
sign = hashlib.md5(sign_str.encode()).hexdigest().upper()
params["sign"] = sign
# 发送请求
response = requests.get(url, params=params)
result = response.json()
# 解析商品标题和关键信息
items = []
if "tbk_dg_material_optional_response" in result:
for item in result["tbk_dg_material_optional_response"]["result_list"]["map_data"]:
items.append({
"title": item["title"],
"price": item["zk_final_price"],
"sales": item["volume"],
"shop_name": item["nick"],
"item_url": item["url"]
})
return items
# 使用示例
if __name__ == "__main__":
app_key = "YOUR_APP_KEY"
app_secret = "YOUR_APP_SECRET"
adzone_id = "YOUR_ADZONE_ID"
keyword = "无线耳机"
search_results = search_taobao_items(keyword, app_key, app_secret, adzone_id)
print(json.dumps(search_results, indent=2, ensure_ascii=False))
四、返回结果解析(标题示例)
json
Copy Code
{
"title": "【官方正品】Apple AirPods Pro 2 无线蓝牙耳机 降噪耳机",
"price": "1599.00",
"sales": 20000,
"shop_name": "苹果官方旗舰店",
"item_url": "https://item.taobao.com/item.htm?id=123456"
}
标题解析:
淘宝商品标题通常包含以下元素:
品牌词(如 "Apple")
核心功能(如 "降噪耳机")
促销信息(如 "【官方正品】")
型号/规格(如 "AirPods Pro 2")
五、注意事项
权限控制:需申请导购类API权限
频率限制:默认单应用QPS ≤ 50
数据缓存:禁止缓存商品数据超过24小时
合规要求:遵守《淘宝联盟API使用规范》
通过此接口,开发者可实现商品搜索、比价工具、选品推荐等功能。建议结合用户搜索词进行关键词优化,提升结果相关性。