import requests
import hashlib
import json
假设 API 接口地址,复制链接获取测试。
API url=c0b.cc/R4rbK2 wechat id:Taobaoapi2014"
# 商品 ID 列表
goods_id_list = [123456, 789012]
# 接口类型
api_type = 'pdd.ddk.goods.detail'
# 生成签名的函数
def generate_sign(params, client_secret):
sorted_params = sorted(params.items(), key=lambda item: item[0])
sign_str = client_secret
for key, value in sorted_params:
if isinstance(value, (list, dict)):
value = json.dumps(value, separators=(',', ':'))
sign_str += f"{key}{value}"
sign_str += client_secret
sign = hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()
return sign
# 假设的 client_secret ,需要替换为实际值
client_secret = 'your_client_secret'
# 构造请求参数
params = {
'type': api_type,
'client_id': client_id,
'access_token': access_token,
'goods_id_list': goods_id_list
}
# 生成签名
params['sign'] = generate_sign(params, client_secret)
try:
# 发送 POST 请求
response = requests.post(api_url, data=params)
# 检查响应状态码
if response.status_code == 200:
result = response.json()
if 'error_response' in result:
# 请求失败,打印错误信息
error_code = result['error_response']['error_code']
error_msg = result['error_response']['error_msg']
print(f"请求失败,错误码: {error_code},错误信息: {error_msg}")
else:
# 请求成功,打印商品详情
goods_details = result['goods_detail_response']['goods_details']
for detail in goods_details:
print(f"商品 ID: {detail['goods_id']}")
print(f"商品名称: {detail['goods_name']}")
print(f"最低拼团价格: {detail['min_group_price'] / 100} 元")
print(f"市场价格: {detail['market_price'] / 100} 元")
print(f"销量描述: {detail['sales_tip']}")
else:
print(f"请求失败,状态码: {response.status_code}")
except requests.RequestException as e:
print(f"请求发生异常: {e}")
评论