taobao.item_review(免費(fèi)獲取調(diào)用地址)
效果展示
這里以Python示例演示封裝京東評(píng)論API的基本邏輯:
import pandas as pd
import time
class JDCommentAPI:
def __init__(self, app_key, app_secret):
self.base_url = "https://api.jd.com/routerjson"
self.app_key = app_key
self.app_secret = app_secret
self.version = "2.0"
def _sign(self, params):
"""生成請(qǐng)求簽名(示例邏輯,真實(shí)簽名需按京東規(guī)則)"""
params_str = ''.join([k + v for k, v in sorted(params.items())])
return hashlib.md5((params_str + self.app_secret).encode()).hexdigest().upper()
def get_good_comments(self, sku_id, page=1, page_size=10):
"""
獲取五星好評(píng)
參數(shù):
sku_id : 商品ID
page : 頁(yè)碼
page_size : 每頁(yè)數(shù)量
"""
method = "jd.biz.product.getComment"
params = {
"method": method,
"app_key": self.app_key,
"timestamp": str(int(time.time())),
"format": "json",
"v": self.version,
"sku": str(sku_id),
"score": 5, # 關(guān)鍵參數(shù):篩選五星好評(píng)
"page": str(page),
"pageSize": str(page_size)
}
params["sign"] = self._sign(params)
try:
response = requests.get(self.base_url, params=params)
response.raise_for_status()
data = response.json()
# 解析評(píng)論數(shù)據(jù)(根據(jù)實(shí)際API響應(yīng)結(jié)構(gòu)調(diào)整)
comments = data.get('result', {}).get('comments', [])
# 假設(shè) API 接口地址,復(fù)制鏈接獲取測(cè)試
API url=o0b.cn/ibrad
# 結(jié)構(gòu)化處理
processed = [{
'user': c.get('nickname'),
'content': c.get('content'),
'score': c.get('score'),
'time': c.get('creationTime')
} for c in comments]
return processed
except Exception as e:
print(f"API請(qǐng)求失敗: {str(e)}")
return []
# 使用示例 ==================================
if __name__ == "__main__":
# 初始化(需從京東開放平臺(tái)獲取真實(shí)密鑰)
app_key = "YOUR_APP_KEY"
app_secret = "YOUR_APP_SECRET"
jd_api = JDCommentAPI(app_key, app_secret)
# 獲取商品100000123的五星好評(píng)(第一頁(yè))
product_id = "100000123"
comments = jd_api.get_good_comments(product_id)
# 轉(zhuǎn)換為DataFrame查看
df = pd.DataFrame(comments)
print(f"獲取到{len(df)}條五星好評(píng):")
print(df.head())
注意事項(xiàng):
- 合法授權(quán):
- 需先注冊(cè)京東開放平臺(tái)(open.jd.com)
- 創(chuàng)建應(yīng)用獲取真實(shí)的
app_key
和app_secret
- 申請(qǐng)商品評(píng)論API權(quán)限
- 參數(shù)說(shuō)明:
score=5
控制篩選五星好評(píng)- 支持分頁(yè)參數(shù)(page/pageSize)
- 實(shí)際需按京東API文檔調(diào)整參數(shù)
- 響應(yīng)處理:
- 真實(shí)響應(yīng)結(jié)構(gòu)需參考最新API文檔
- 建議添加異常處理和重試機(jī)制
- 注意API調(diào)用頻率限制
- 數(shù)據(jù)存儲(chǔ)建議:
# 保存到CSV
df.to_csv(f"jd_comments_{product_id}.csv", index=False)
# 保存到數(shù)據(jù)庫(kù)示例(MySQL)
from sqlalchemy import create_engine
engine = create_engine('mysql://user:password@localhost/db_name')
df.to_sql('jd_comments', engine, if_exists='append')
請(qǐng)務(wù)必遵守京東開放平臺(tái)規(guī)則,正式使用前請(qǐng)仔細(xì)閱讀:
京東API文檔