如何调用Amazon商品详情API获取产品信息
在跨境电商、商品比价、数据分析等场景中,精准、稳定地获取亚马逊商品信息是核心需求。相比于爬虫,Amazon 官方商品详情 API是更合规、更稳定的方案。本文以当前主流的PA-API v5(Product Advertising API)为例,完整讲解从准备、认证、调用到解析的全流程。
一、API 选型与适用场景
亚马逊获取商品信息主要有两类 API:
- PA-API v5:面向联盟推广、商品展示、搜索与详情查询,开放度高,适合大多数开发者。
- SP-API:面向卖家后台管理,需店铺权限,不适合普通商品查询。
本文以PA-API v5为例,支持按ASIN获取标题、图片、价格、评分、详情、分类等信息。
二、前期准备(必须完成)
- 注册亚马逊开发者账号进入 Amazon Associates 注册联盟账号,获取Associate Tag。
- 申请 PA-API v5 权限进入 Amazon Developer Portal,创建应用,申请 PA-API 权限。
- 获取密钥信息审核通过后拿到以下凭证:
- Access Key ID
- Secret Access Key
- Associate Tag
- 区域端点(如 us-east-1)
三、调用流程(核心步骤)
- 确定目标商品 ASINASIN 是亚马逊商品唯一标识,从商品 URL 中提取,如
B0CYS5N8DX。 - 构造请求使用
GetItems接口获取单 / 多个 ASIN 详情。 - 请求签名亚马逊要求 AWS SigV4 签名,必须用代码自动生成,不可手动拼接。
- 发送请求并解析 JSON提取需要的字段存入数据库或业务系统。
四、Python 完整可运行代码
python
运行
import requests from paapi5_python_sdk.api.default_api import DefaultApi from paapi5_python_sdk.models.get_items_request import GetItemsRequest from paapi5_python_sdk.models.partner_type import PartnerType # 1. 填入你的凭证 ACCESS_KEY = "你的AccessKey" SECRET_KEY = "你的SecretKey" ASSOCIATE_TAG = "你的AssociateTag" REGION = "us-east-1" # 2. 初始化API api = DefaultApi( access_key=ACCESS_KEY, secret_key=SECRET_KEY, host=f"webservices.amazon.{REGION}" ) # 3. 构造请求(可传入多个ASIN) asin_list = ["B0CYS5N8DX"] request = GetItemsRequest( partner_tag=ASSOCIATE_TAG, partner_type=PartnerType.ASSOCIATES, marketplace="www.amazon.com", item_ids=asin_list, resources=[ "Images.Primary.Large", "ItemInfo.Title", "ItemInfo.ProductInfo", "Offers.Listings.Price" ] ) # 4. 发起调用 try: response = api.get_items(request) items = response.items if items: item = items[0] title = item.item_info.title.display_value image = item.images.primary.large.url price = item.offers.listings[0].price.display_amount print("商品标题:", title) print("主图:", image) print("价格:", price) except Exception as e: print("调用失败:", e)五、常用返回字段说明
ItemInfo.Title:商品标题Images.Primary.Large:高清主图Offers.Listings.Price:售价ItemInfo.ProductInfo:品牌、型号、尺寸、重量BrowseNodeInfo:分类信息CustomerReviews:评分与评价数
六、调用规范与限制
- 必须合规使用,禁止用于刷单、比价恶意攻击、囤货监控等违规场景。
- 频率限制:个人账户通常有 QPS 限制,大量调用需申请提升配额。
- 禁止存储价格:PA-API 不允许长期缓存价格,需实时获取。
- 必须标注联盟来源,并正确使用 Associate Tag。
七、常见问题
- 签名错误:检查时间同步、区域、密钥是否正确。
- 无返回数据:确认 ASIN 有效、marketplace 站点匹配。
- 权限被拒:检查 PA-API 权限是否开通、账号是否通过审核。
八、总结
使用Amazon PA-API v5获取商品详情,是官方支持、稳定持久、合规安全的方案。只要完成联盟账号申请、正确实现签名、按规范请求,即可稳定获取标题、图片、价格、参数等全量商品数据,支撑电商选品、数据分析、内容站、导购小程序等场景。
下一步可批量获取 ASIN、异步并发调用、接入定时更新与异常重试,构建完整的商品数据服务。
