
专门给程序员用的标准校验代码,适合亚马逊商品采集、数据分析、比价、铺货场景,确保数据准确、字段完整、格式合法。
def check_amazon_item_accuracy(json_data):
"""
亚马逊商品详情API 数据准确性校验
返回:(是否通过, 提示信息)
"""
try:
# 1. 校验顶层结构
if "item" not in json_data:
return False, "返回结构异常:无 item 节点"
item = json_data["item"]
if not item:
return False, "未获取到商品数据"
# 2. ASIN 校验(亚马逊唯一商品ID)
asin = item.get("asin")
if not asin or len(asin) != 10:
return False, f"ASIN 无效:{asin}"
# 3. 标题校验
title = item.get("title")
if not title or len(title) < 5:
return False, "商品标题过短或为空"
# 4. 价格校验
price = item.get("price", "0")
try:
price_val = float(price)
if price_val <= 0:
return False, f"价格异常:{price}"
except:
return False, f"价格格式错误:{price}"
# 5. 主图链接校验
img_url = item.get("main_image_url")
if not img_url or "http" not in img_url:
return False, "商品主图无效"
# 6. 评分校验(1-5星)
rating = item.get("rating", 0)
try:
rating_val = float(rating)
if not (0 <= rating_val <= 5):
return False, f"评分异常:{rating}"
except:
pass
# 7. 类目校验
category = item.get("category")
if not category:
return False, "商品类目缺失"
return True, "亚马逊商品数据校验通过,准确有效"
except Exception as e:
return False, f"校验异常:{str(e)}"{
"item": {
"asin": "B0C4567890",
"title": "Wireless Earbuds Bluetooth Headphones",
"price": "29.99",
"currency": "USD",
"main_image_url": "https://m.media-amazon.com/images/I/xxx.jpg",
"rating": 4.6,
"review_count": 12800,
"brand": "Generic",
"category": "Electronics > Headphones",
"stock_status": "In Stock"
},
"code": 200,
"message": "success"
}# 调用API获取JSON
json_result = requests.get(api_url, params=params).json()
# 执行校验
ok, msg = check_amazon_item_accuracy(json_result)
print(ok, msg)亚马逊 API 数据校验 = 结构正确 + ASIN 合法 + 价格有效 + 字段完整
让你的跨境电商数据分析、商品搬家、价格监控100% 稳定可靠。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。