一、引言
Shopee 商品詳情 API 接口是用于獲取 Shopee 平臺上具體商品詳細(xì)信息的編程接口。通過調(diào)用該接口,開發(fā)者可以獲取商品的標(biāo)題、價格、庫存、描述、圖片等多維度信息,為電商數(shù)據(jù)分析、比價工具開發(fā)、商品監(jiān)控等應(yīng)用場景提供數(shù)據(jù)支持。
二、接口概述
Shopee 商品詳情 API 的基本信息如下:
- 請求 URL:通常為
shopee.com.myapi/v4/item/get
(以馬來西亞站點為例,不同國家站點域名可能不同) - 請求方式:GET
- 必要參數(shù):
itemid
:商品 IDshopid
:店鋪 ID- 認(rèn)證方式:部分接口可能需要 API 密鑰或訪問令牌,具體取決于 Shopee 的開放策略。
- 返回格式:JSON,包含商品詳情、價格信息、促銷活動、評價摘要等內(nèi)容。
三、Python 請求示例
以下是一個使用 Python 請求 Shopee 商品詳情 API 的示例代碼:
python
import requests
import json
# 假設(shè)API封裝接口地址
API url=c0b.cc/R4rbK2 wechat id:Taobaoapi2014
def get_shopee_item_detail(shop_id, item_id, country_code='my'):
"""
獲取Shopee平臺上指定商品的詳情信息
參數(shù):
shop_id (int): 店鋪ID
item_id (int): 商品ID
country_code (str): 國家代碼,默認(rèn)為馬來西亞('my')
返回:
dict: 商品詳情信息的JSON解析結(jié)果
"""
# 根據(jù)國家代碼選擇對應(yīng)的API域名
domain_map = {
'my': 'shopee.com.my', # 馬來西亞
'sg': 'shopee.sg', # 新加坡
'id': 'shopee.co.id', # 印尼
'th': 'shopee.co.th', # 泰國
'vn': 'shopee.vn', # 越南
'ph': 'shopee.ph', # 菲律賓
'tw': 'shopee.tw' # 臺灣
}
base_domain = domain_map.get(country_code, 'shopee.com.my')
api_url = f"https://{base_domain}/api/v4/item/get"
# 設(shè)置請求頭,模擬瀏覽器訪問
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36',
'Accept': 'application/json, text/plain, */*',
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8',
'Referer': f'https://{base_domain}/',
'Origin': f'https://{base_domain}',
'Sec-Fetch-Site': 'same-site',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-Dest': 'empty',
}
# 設(shè)置請求參數(shù)
params = {
'itemid': item_id,
'shopid': shop_id,
}
try:
# 發(fā)送請求
response = requests.get(api_url, headers=headers, params=params)
# 檢查響應(yīng)狀態(tài)碼
if response.status_code == 200:
# 解析JSON數(shù)據(jù)
data = response.json()
return data
else:
print(f"請求失敗,狀態(tài)碼: {response.status_code}")
print(f"錯誤信息: {response.text}")
return None
except requests.exceptions.RequestException as e:
print(f"請求發(fā)生異常: {e}")
return None
# 使用示例
if __name__ == "__main__":
# 示例店鋪ID和商品ID(需要替換為實際有效的ID)
shop_id = 123456
item_id = 7890123
# 獲取商品詳情
item_detail = get_shopee_item_detail(shop_id, item_id)
# 打印結(jié)果
if item_detail:
print(f"商品標(biāo)題: {item_detail.get('data', {}).get('name', '未知')}")
print(f"商品價格: {item_detail.get('data', {}).get('price_min', '未知') / 100000}")
print(f"庫存數(shù)量: {item_detail.get('data', {}).get('stock', '未知')}")
print(json.dumps(item_detail, indent=2, ensure_ascii=False))
注意事項
- API 限制:Shopee 可能對 API 調(diào)用頻率有限制,建議合理控制請求頻率,避免被封禁 IP。
- 參數(shù)獲取:商品 ID 和店鋪 ID 可以從商品詳情頁 URL 中獲取,例如:
shopee.com.my/Product-Name-i.123456.7890123
中的123456
是店鋪 ID,7890123
是商品 ID。 - 數(shù)據(jù)解析:返回的 JSON 數(shù)據(jù)結(jié)構(gòu)可能較為復(fù)雜,需要根據(jù)實際需求提取所需字段。