要根据商品ID获取京东商品的详情数据,您可以使用京东开放平台的商品API。具体步骤如下:
1.首先,您需要在京东开放平台注册开发者账号,并创建应用。在创建应用时,选择商品API权限。
2.在您的应用中,找到获取商品详情数据的接口。京东开放平台提供了多个API接口来获取不同级别的商品信息,例如:商品详情、商品价格、商品图片等。
3.调用接口时,需要传入商品ID作为参数。您可以使用京东商品的SKU(Stock Keeping Unit)作为商品ID。一个商品可能有多个SKU,每个SKU都对应一个具体的商品。
4.根据接口文档中的要求,设置请求参数,如认证信息、商品ID等。具体参数和请求方式,您可以参考京东开放平台提供的API文档。
5.通过发送HTTP请求到京东开放平台的商品API地址,获取商品详情数据。根据API的返回结果,您可以获取商品的各种信息,如商品名称、价格、图片等。
6.解析返回结果,提取您需要的商品详情数据。可以使用JSON或XML解析库来处理返回的数据。
代码如下:
item_get-获得JD商品详情数据(复制Taobaoapi2014)返回值说明
1.请求方式:http post get
2.请求示例:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.nio.charset.Charset;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.PrintWriter;
import java.net.URLConnection;
public class Example {
private static String readAll(Reader rd) throws IOException {
StringBuilder sb = new StringBuilder();
int cp;
while ((cp = rd.read()) != -1) {
sb.append((char) cp);
}
return sb.toString();
}
public static JSONObject postRequestFromUrl(String url, String body) throws IOException, JSONException {
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);
PrintWriter out = new PrintWriter(conn.getOutputStream());
out.print(body);
out.flush();
InputStream instream = conn.getInputStream();
try {
BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8")));
String jsonText = readAll(rd);
JSONObject json = new JSONObject(jsonText);
return json;
} finally {
instream.close();
}
}
public static JSONObject getRequestFromUrl(String url) throws IOException, JSONException {
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
InputStream instream = conn.getInputStream();
try {
BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8")));
String jsonText = readAll(rd);
JSONObject json = new JSONObject(jsonText);
return json;
} finally {
instream.close();
}
}
public static void main(String[] args) throws IOException, JSONException {
// 请求示例 url 默认请求参数已经URL编码处理
String url = "https://api-gw.xxxx.cn/jd/item_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=10335871600";
JSONObject json = getRequestFromUrl(url);
System.out.println(json.toString());
}
}
3.响应参数
名称 | 类型 | 描述 |
---|---|---|
items | items[] | 获得JD商品详情 |
num_iid | Bigint | 商品ID |
title | String | 商品标题 |
desc_short | String | 商品简介 |
price | Float | 价格 |
total_price | Float | |
suggestive_price | Float | |
orginal_price | Float | 原价 |
nick | String | 掌柜昵称 |
num | Int | |
min_num | Int | |
detail_url | String | 商品链接 |
pic_url | String | 商品图片 |
brand | String | 品牌名称 |
brandId | Int | 品牌ID |
rootCatId | Int | 顶级分类ID |
cid | Int | |
crumbs | Mix | |
created_time | String | |
modified_time | String | |
delist_time | String | |
desc | String | |
desc_img | Mix | |
item_imgs | Mix | 商品图片 |
item_weight | String | |
item_size | String | |
location | String | 发货地 |
post_fee | Float | 物流费用 |
express_fee | Float | 快递费用 |
ems_fee | Float | EMS费用 |
shipping_to | String | 发货至 |
has_discount | Boolean | |
video | Mix | 商品视频 |
is_virtual | String | |
sample_id | String | 商品风格标识ID |
is_promotion | Boolean | |
props_name | String | 商品属性名 |
prop_imgs | Mix | 商品属性图片列表 |
property_alias | String | 商品属性别名 |
props | Mix | 商品详情 |
total_sold | Int | |
skus | Mix | 商品规格信息 |
seller_id | Int | 卖家ID |
sales | Int | 销量 |
shop_id | Int | 店铺ID |
props_list | Mix | 商品属性 |
seller_info | Mix | 卖家信息 |
tmall | Boolean | 是否天猫 |
error | String | 错误信息 |
warning | String | 警告信息 |
url_log | Mix | |
props_img | Mix | 属性图片 |
shop_item | Mix | |
relate_items | Mix |
请注意,为了使用京东开放平台的商品API,您需要进行身份验证,并获得访问令牌。具体的身份验证和令牌获取方式,请查阅京东开放平台的开发文档。