首页 > 大数据 > 可视化 > 淘宝店铺商品接口设计与实现指南
App Key和
App Secret
。taobao.items.onsale.get等接口的使用权限
。taobao.items.onsale.get:获取店铺在售商品列表。taobao.item.get:通过商品ID获取单个商品的详细信息。taobao.items.search:通过关键词搜索商品。https://gw.api.taobao.com/router/rest发送
。app_key、
timestamp、
v(API版本号)、
sign_method(签名方法)等
。nick(卖家昵称)、
shop_id(店铺ID)、
page_no(页码)、
page_size(每页条数)等
。import requestsimport timeimport hashlibimport json# 生成签名def generate_sign(params, app_secret):
sorted_params = sorted(params.items())
query_string = "&".join([f"{k}={v}" for k, v in sorted_params])
sign_str = f"{app_secret}{query_string}{app_secret}"
return hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()# 获取店铺商品列表def get_shop_items(app_key, app_secret, shop_id, page=1, page_size=40):
timestamp = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
url = "https://gw.api.taobao.com/router/rest"
params = {
"method": "taobao.items.onsale.get",
"app_key": app_key,
"timestamp": timestamp,
"format": "json",
"v": "2.0",
"sign_method": "md5",
"nick": shop_id,
"page_no": page_no,
"page_size": page_size,
"fields": "num_iid,title,price,pic_url"
}
params["sign"] = generate_sign(params, app_secret)
response = requests.get(url, params=params)
return response.json()# 解析商品数据def parse_items(response_data):
if "items" in response_data and response_data["items"]["item"]:
items = response_data["items"]["item"]
for item in items:
print(f"商品ID: {item['num_iid']}, 标题: {item['title']}, 价格: {item['price']}, 图片链接: {item['pic_url']}")
else:
print("未找到商品数据")# 主程序if __name__ == "__main__":
app_key = "your_app_key"
app_secret = "your_app_secret"
shop_id = "your_shop_id"
page = 1
page_size = 40
while True:
response_data = get_shop_items(app_key, app_secret, shop_id, page_no, page_size)
parse_items(response_data)
page_no += 1
if len(response_data.get("items", {}).get("item", [])) < page_size:
breakApp Key和
App Secret是重要的安全凭证,必须妥善保管,避免泄露
。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70041666/viewspace-3075229/ ,如需转载,请注明出处,否则将追究法律责任。