?
引言 在電商數據分析和比價應用中,獲取可靠的商品列表信息是關鍵。識貨平臺作為一個知名的導購社區,其提供的搜索接口是開發者獲取熱門商品數據的重要途徑。本文將詳細解析如何調用識貨的列表搜索API,包括接口地址、參數傳遞、簽名驗證以及響應處理,并提供完整的Python示例代碼。
一、接口基本信息
通過分析網絡請求,典型的識貨列表搜索API路徑可能為:
https://api.shihuo.com/search/list

該接口通常采用HTTPS協議和GET請求方法。
二、核心請求參數
調用接口需構造包含以下關鍵參數的URL:
關鍵詞參數
keyword: 搜索關鍵詞(如"跑鞋"),需進行URL編碼。
分頁參數
page: 當前頁碼(從1開始)
pageSize: 每頁數據量(通常為20)
排序參數
sort: 排序方式(例如"hot"表示按熱度排序)
安全驗證參數
timestamp: 當前時間戳(精確到秒)
sign: 請求簽名(用于防篡改,需按平臺規則生成)
簽名生成邏輯示例
簽名通常通過對參數按字典序排序后拼接密鑰計算MD5:
import hashlib def generate_sign(params, secret_key): sorted_params = sorted(params.items()) raw_str = '&'.join([f'{k}={v}' for k, v in sorted_params]) sign_str = raw_str + secret_key return hashlib.md5(sign_str.encode()).hexdigest()

三、請求頭設置
需在HTTP Header中設置以下字段:
headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) ...", "Referer": "https://www.shihuo.com/", "X-Requested-With": "XMLHttpRequest" }

四、處理API響應
成功調用將返回JSON格式數據,典型結構如下:
{
"code": 200,
"message": "success",
"data": {
"list": [
{
"itemId": "123456",
"title": "Nike Air Zoom Pegasus 38",
"price": "599.00",
"imageUrl": "https://img.shihuo.com/.../sample.jpg"
},
... // 其他商品項
],
"totalCount": 150
}
}

關鍵字段說明:
code=200 表示請求成功
data.list 包含商品對象數組
data.totalCount 為總結果數
五、Python完整調用示例
import requests
import time
import hashlib
from urllib.parse import quote
# 基礎配置
API_URL = "https://api.shihuo.com/search/list"
SECRET_KEY = "your_secret_key" # 需向平臺申請
def search_shihuo(keyword, page=1, page_size=20):
# 構造基礎參數
params = {
"keyword": quote(keyword),
"page": page,
"pageSize": page_size,
"sort": "hot",
"timestamp": int(time.time())
}
# 生成簽名
params["sign"] = generate_sign(params, SECRET_KEY)
# 發送請求
resp = requests.get(API_URL, params=params, headers=headers)
if resp.status_code == 200:
data = resp.json()
if data["code"] == 200:
return data["data"]
else:
print(f"API錯誤: {data['message']}")
return None
# 示例調用
result = search_shihuo("籃球鞋")
if result:
print(f"共找到 {result['totalCount']} 條結果")
for item in result["list"]:
print(f"商品ID: {item['itemId']}, 名稱: {item['title']}, 價格: {item['price']}")

六、注意事項
密鑰安全
切勿在前端代碼中暴露SECRET_KEY,應通過服務端中轉調用。
頻率限制
注意接口的請求頻率限制(如QPS),避免觸發風控。
數據更新
商品價格和庫存具有時效性,需定期更新數據。
版本兼容
關注API版本變更公告,及時調整參數結構。
結語
通過本文的詳細解析,開發者可以快速集成識貨商品搜索能力到自己的應用中。在實際使用時,請務必遵守平臺API使用協議,合理合法地獲取數據。對于返回數據的深度處理(如價格監控、商品推薦等),可結合更多業務邏輯進一步擴展。
?審核編輯 黃宇
-
API
+關注
關注
2文章
2372瀏覽量
66790
發布評論請先 登錄
亞馬遜平臺根據關鍵字搜索商品API接口
深入解析:調用識貨平臺列表搜索API獲取商品數據
評論