引言
亚马逊作为全球知名的电子商务巨头,拥有海量的商品资源和庞大的用户群体。对于开发者、数据分析师、电商从业者以及市场调研人员来说,获取亚马逊商品的详细信息具有重要意义。通过亚马逊商品详情 API 接口,能够方便快捷地获取商品的各种数据,为市场分析、竞品研究、价格监控、电商业务优化等提供有力支持。小编:Taobaoapi2014, 前往体验API:c0b.cc/R4rbK2 。
API概述
- 请求方式:通常基于 HTTP/HTTPS 协议,支持 GET 和 POST 请求方式,具体根据接口设计和参数要求选择。一般参数少、数据量小的请求用 GET 方式,复杂参数或大量数据传输用 POST 方式。
- 市场代码:用于指定目标市场区域,如 “US” 代表美国市场,“UK” 代表英国市场等,不同市场商品信息有差异。
- 其他可选参数:可能包括响应数据格式(如 JSON、XML),是否获取商品评论、变体信息等附加数据的标志参数。
- 返回信息:包括商品基本信息(标题、品牌、制造商、描述、图片链接等)、价格信息(售价、原价、不同卖家价格范围、货币单位)、库存信息(库存数量、有货状态标识)、商品评论与评分(平均评分、总评论数,部分接口可能返回详细评论内容和评论者信息)、排名信息(商品在所属类目下的销售排名)。
Python 请求示例
以下是一个使用 Python 的 requests
库和 AWS Signature V4 签名机制调用亚马逊商品详情 API 的示例,以获取指定 ASIN 商品的信息:
import requests
import datetime
import hashlib import hmac
import base64
# 假设 API 接口地址,复制链接获取测试。
API url=c0b.cc/R4rbK2 wechat id:Taobaoapi2014"
# 商品的ASIN asin = 'B00P8XQPY4'
# 亚马逊商品详情API的端点 endpoint = 'webservices.amazon.com'
# 区域,这里以美国为例 region = 'us-east-1'
# 服务名称 service = 'ProductAdvertisingAPI'
# 构建请求参数 params = { 'AWSAccessKeyId': access_key, 'AssociateTag': 'YOUR_ASSOCIATE_TAG',
# 你的关联标签 'ItemId': asin, 'Operation': 'ItemLookup', 'ResponseGroup': 'ItemAttributes,Offers,Images', 'Timestamp': datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%SZ') } # 对参数进行排序 sorted_params = sorted(params.items())
# 构建查询字符串 query = '&'.join([f'{k}={v}' for k, v in sorted_params])
# 构建规范请求 canonical_request = f"GET\n/{query}\n\n"
# 构建字符串进行签名 string_to_sign = f"AWS4-HMAC-SHA256\n{params['Timestamp']}\n{region}/{service}/aws4_request\n{hashlib.sha256(canonical_request.encode()).hexdigest()}"
# 计算签名 signature = hmac.new(('AWS4' + secret_key).encode(), string_to_sign.encode(), hashlib.sha256).digest() signature_b64 = base64.b64encode(signature).decode()
# 构建请求URL url = f"http://{endpoint}/onca/xml?{query}&Signature={signature_b64}"
# 发送请求 response = requests.get(url)
# 解析响应 if response.status_code == 200: print(response.text) else: print(f"请求失败,状态码:{response.status_code},原因:{response.reason}")
在使用上述代码时,需要将 YOUR_ACCESS_KEY
、YOUR_SECRET_KEY
和 YOUR_ASSOCIATE_TAG
替换为你在亚马逊开发者中心获取的实际访问密钥、密钥密钥和关联标签。同时,根据需要修改 asin
以查询不同商品的信息。