闲鱼商品详情数据可通过官方提供的 Goodfish.item_get API 接口获取,该接口采用 RESTful 风格设计,通过 HTTP GET 请求访问,返回 JSON 格式数据,支持开发者获取商品标题、价格、描述、图片、卖家信息、分类信息等完整数据。以下是关于该接口的详细介绍:
一、接口核心参数
必填参数:
app_key:开发者在闲鱼开放平台申请的应用密钥,用于身份验证。num_iid:闲鱼商品的唯一标识符,从商品 URL 中获取。timestamp:请求时间戳,格式为YYYY-MM-DD HH:MM:SS。sign:根据请求参数和app_secret生成的签名,确保请求安全性。可选参数:
cache:是否使用缓存,默认no。lang:返回语言,默认zh-CN(简体中文)。version:API 版本,如1.0。
二、签名生成流程
签名是接口调用的关键安全机制,需按以下步骤生成:
参数排序:将所有请求参数(含系统参数和业务参数)按参数名 ASCII 升序排序(字典序)。
拼接字符串:将排序后的参数拼接为字符串,格式为
key1value1key2value2...keyNvalueN。拼接密钥:在字符串前后分别添加
AppSecret,即AppSecret + 拼接串 + AppSecret。加密生成签名:使用 MD5 算法对拼接后的字符串进行加密,并转换为 32 位大写字符串。
三、Python 请求示例
以下是一个完整的 Python 请求示例,包括签名生成和请求处理:
pythonimport requestsimport hashlibfrom datetime import datetimedef generate_sign(params, app_secret): sorted_params = sorted(params.items(), key=lambda x: x[0]) sign_str = app_secret + ''.join([f"{k}{v}" for k, v in sorted_params]) + app_secret return hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()def get_item_details(app_key, app_secret, item_id): url = "https://api-gw.onebound.cn/goodfish/item_get/" timestamp = datetime.now().strftime('%Y-%m-%d %H:%M:%S') params = { "key": app_key, "num_iid": item_id, "timestamp": timestamp, "version": "1.0", "cache": "no", "result_type": "json", "lang": "zh-CN" } params["sign"] = generate_sign(params, app_secret) response = requests.get(url, params=params) return response.json()# 示例调用app_key = "YOUR_APP_KEY"app_secret = "YOUR_APP_SECRET"item_id = "123456789"result = get_item_details(app_key, app_secret, item_id)print(result)四、返回数据结构
接口返回的 JSON 数据示例如下:
json{ "code": 200, "message": "调用成功", "data": { "id": "123456789", "title": "商品标题", "price": "当前售价", "original_price": "原价", "imageUrl": "主图URL", "description": "商品描述", "location": "商品所在地", "sales": "已售数量", "status": "商品状态", "view_count": "浏览量", "wish_count": "想要数", "category": "商品分类路径", "publish_time": "发布时间", "nick": "卖家昵称", "credit_level": "信用等级", "good_rate": "好评率", "seller_id": "加密后的卖家ID", "promotions": "促销活动数组" }}五、注意事项
遵守平台规则:在使用 API 时,必须严格遵守闲鱼平台的相关规定,不得用于非法或违反平台政策的用途。
保护用户数据:确保对获取到的用户数据进行妥善保护,防止数据泄露,严格遵守相关的数据保护法规。
合理使用 API 频率:避免过度频繁地调用 API,以免对平台服务器造成过大压力,影响平台的正常运行和其他用户的使用体验。
处理错误异常:建立良好的错误处理机制,在请求出现问题时能够提供清晰的指导信息,帮助开发者快速定位问题并进行修复。
关注 API 更新:闲鱼平台可能会对商品详情 API 进行更新和优化,开发者需要持续关注 API 的变化,及时调整自己的应用程序,以确保其能够正常使用并充分发挥 API 的新功能。