一、API接入核心流程
1. 注冊與權(quán)限獲取
- 賬號注冊:訪問淘寶開放平臺/萬邦開放平臺,使用淘寶賬號登錄,完成企業(yè)/個人實名認證。
- 應用創(chuàng)建:在控制臺創(chuàng)建應用,填寫名稱、類型(如網(wǎng)頁應用)、回調(diào)地址(需HTTPS備案),提交審核(1-3個工作日)。
- 權(quán)限申請:在API權(quán)限管理中申請
taobao.item.reviews.get
接口,需詳細說明使用場景(如數(shù)據(jù)分析、競品監(jiān)控)。
2. 密鑰與簽名
- 獲取憑證:審核通過后,在應用詳情頁獲取App Key和App Secret。
- 簽名算法: scss 體驗AI代碼助手 代碼解讀復制代碼python def generate_sign(params, app_secret): sorted_params = sorted(params.items(), key=lambda x: x[0]) sign_str = app_secret for k, v in sorted_params: sign_str += f"{k}{v}" sign_str += app_secret return hmac.new( app_secret.encode(), sign_str.encode(), hashlib.sha256 ).hexdigest().upper()
二、API調(diào)用步驟
1. 請求參數(shù)構(gòu)造
python
params = {
"method": "taobao.item.reviews.get",
"app_key": "YOUR_APP_KEY",
"num_iid": "商品ID", # 從商品URL提取,如https://item.taobao.com/item.htm?id=123456中的123456
"page_no": 1, # 頁碼
"page_size": 20, # 每頁條數(shù)(最大100)
"rate_type": "1", # 1=好評,2=中評,3=差評
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
"format": "json",
"v": "2.0"
}
params["sign"] = generate_sign(params, "YOUR_APP_SECRET")
2. 發(fā)送請求
python
response = requests.get(
"https://eco.taobao.com/router/rest",
params=params
)
data = response.json()
3. 響應解析
python
if data["code"] == "200":
for comment in data["item_reviews_get_response"]["reviews"]:
print(f"用戶: {comment['user_nick']}")
print(f"評分: {comment['result']}")
print(f"評論: {comment['rate_content']}\n")
else:
print(f"錯誤碼: {data['code']}, 消息: {data.get('msg', '未知錯誤')}")
三、高級功能與注意事項
1. 分頁與篩選
- 分頁控制:通過page_no和page_size參數(shù)分頁獲取數(shù)據(jù)。
- 篩選條件: rate_type:按評分類型篩選。 has_image:是否包含圖片評論(需在fields中指定)。
2. 數(shù)據(jù)脫敏與合規(guī)
- 隱私保護:用戶昵稱等字段可能返回脫敏值(如
g**0
),禁止存儲用戶手機號、地址等敏感信息。 - 頻率限制:免費版API每日調(diào)用上限500次,企業(yè)用戶可申請?zhí)犷~。
3. 錯誤處理
- 常見錯誤碼: 40001:簽名錯誤(檢查參數(shù)排序和加密算法)。 30001:權(quán)限不足(確認API權(quán)限已審核通過)。 10001:參數(shù)錯誤(檢查商品ID格式和必填字段)。
四、實戰(zhàn)案例:評論情感分析
python
import pandas as pd
from textblob import TextBlob
comments = []
for page in range(1, 5): # 獲取前4頁評論
params["page_no"] = page
response = requests.get("https://eco.taobao.com/router/rest", params=params)
data = response.json()
if data["code"] == "200":
comments.extend(data["item_reviews_get_response"]["reviews"])
# 情感分析
df = pd.DataFrame(comments)
df["sentiment"] = df["rate_content"].apply(lambda x: TextBlob(x).sentiment.polarity)
print(df.groupby("result")["sentiment"].mean()) # 按評分統(tǒng)計情感均值
五、附錄
- 接口地址:
https://eco.taobao.com/router/rest
- 最新文檔:淘寶開放平臺
- 工具推薦:Postman(調(diào)試簽名)、Python Requests庫(自動化調(diào)用)
通過以上步驟,開發(fā)者可高效集成淘寶商品評論數(shù)據(jù),實現(xiàn)競品分析、輿情監(jiān)控等業(yè)務需求。
作者:藍傾
鏈接:https://juejin.cn/post/7525711687703625779
來源:稀土掘金
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。