91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

京東關(guān)鍵詞搜索接口獲取商品數(shù)據(jù)的實(shí)操指南

? 來源:jf_57394773 ? 作者:jf_57394773 ? 2026-01-07 13:56 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

京東關(guān)鍵詞搜索接口獲取商品數(shù)據(jù) 實(shí)操指南

本指南聚焦京東開放平臺合規(guī)接口(item_search基礎(chǔ)版 / item_search_pro增強(qiáng)版),提供從賬號準(zhǔn)備→接口調(diào)用→數(shù)據(jù)解析→落地應(yīng)用的全流程實(shí)操步驟,確保新手也能快速完成商品數(shù)據(jù)獲取,適配電商選品、競品分析、運(yùn)營監(jiān)控等核心場景。

一、 實(shí)操前置:合規(guī)準(zhǔn)備與核心憑證獲取

京東關(guān)鍵詞接口屬于官方開放接口,需完成開發(fā)者認(rèn)證與權(quán)限申請,嚴(yán)禁未經(jīng)授權(quán)的爬蟲抓取,否則會面臨 IP 封禁、法律風(fēng)險(xiǎn)。

1. 賬號與權(quán)限準(zhǔn)備(3 步完成)

步驟 操作內(nèi)容 詳細(xì)指引
1 注冊京東開放平臺開發(fā)者賬號 訪問 京東開放平臺官網(wǎng) → 點(diǎn)擊 “開發(fā)者注冊” → 選擇個(gè)人 / 企業(yè)身份完成實(shí)名認(rèn)證(企業(yè)需提供營業(yè)執(zhí)照,個(gè)人需提供身份證)
2 創(chuàng)建應(yīng)用并申請接口權(quán)限 登錄后進(jìn)入 “應(yīng)用管理” → 點(diǎn)擊 “創(chuàng)建應(yīng)用” → 填寫應(yīng)用名稱、用途(如 “商品數(shù)據(jù)采集與選品分析”) → 提交審核 → 審核通過后,在 “權(quán)限管理” 中申請 「商品搜索接口」(基礎(chǔ)版item_search或增強(qiáng)版item_search_pro)
3 獲取核心調(diào)用憑證 應(yīng)用審核通過后,在 “應(yīng)用詳情” 頁查看并保存 AppKey(應(yīng)用唯一標(biāo)識)、AppSecret(密鑰) → 這兩個(gè)參數(shù)是接口調(diào)用的核心,需妥善保管,避免泄露

注意:item_search_pro屬于高級接口,需單獨(dú)申請權(quán)限,審核周期比基礎(chǔ)版長 1-2 個(gè)工作日。

2. 工具準(zhǔn)備

開發(fā)環(huán)境Python/Java/PHP(推薦 Python,代碼簡潔易上手)

依賴工具:Python 需安裝requests庫(pip install requests)、Java 需安裝HttpClient、PHP 需開啟curl擴(kuò)展

輔助工具:Postman(接口調(diào)試)、Excel/MySQL(數(shù)據(jù)存儲)

二、 核心配置:接口參數(shù)與簽名算法(必掌握)

京東 API 采用 “參數(shù) + 簽名” 驗(yàn)證機(jī)制,簽名錯(cuò)誤是調(diào)用失敗的最常見原因,需嚴(yán)格按以下步驟配置。

1. 接口參數(shù)分類(公共參數(shù) + 業(yè)務(wù)參數(shù))

(1) 公共參數(shù)(所有接口通用,必填)

參數(shù)名 取值要求 示例值
app_key 應(yīng)用詳情頁獲取的AppKey 1234567890
method 接口名稱,基礎(chǔ)版填jd.union.open.goods.search;增強(qiáng)版填jd.union.open.goods.search.pro jd.union.open.goods.search
format 響應(yīng)格式,固定為json json
v 接口版本,基礎(chǔ)版用3.0;增強(qiáng)版用4.0 3.0
timestamp 請求時(shí)間戳,格式y(tǒng)yyy-MM-dd HH:mm:ss(需與京東服務(wù)器時(shí)間一致,誤差≤5 分鐘) 2026-01-08 10:30:00
sign 簽名值,通過 HMAC-SHA256 算法生成(下文詳細(xì)說明) 8F7A6B5C4D3E2F1A9087654321ABCDEF

(2) 業(yè)務(wù)參數(shù)(關(guān)鍵詞搜索核心參數(shù))

參數(shù)名 必填 取值說明 示例值
keyword 搜索關(guān)鍵詞,支持多詞組合(空格分隔) 無線藍(lán)牙耳機(jī) 主動降噪
page 頁碼,默認(rèn) 1,基礎(chǔ)版最大 50 頁;增強(qiáng)版最大 100 頁 1
page_size 每頁條數(shù),默認(rèn) 30,基礎(chǔ)版最大 50;增強(qiáng)版最大 100 50
sort_type 排序方式:price_asc(低價(jià))、sales_desc(銷量)、real_sales_desc(增強(qiáng)版實(shí)時(shí)銷量) sales_desc
price_from/price_to 價(jià)格區(qū)間篩選(增強(qiáng)版專屬) 100/300

2. 簽名算法實(shí)操(3 步生成,以 Python 為例)

簽名是京東 API 的核心驗(yàn)證環(huán)節(jié),步驟如下:

參數(shù)排序:將所有公共參數(shù) + 業(yè)務(wù)參數(shù),按參數(shù)名 ASCII 碼升序排列(如app_key→format→keyword→method...)

拼接字符串:按 key=value&key=value 格式拼接排序后的參數(shù)(不進(jìn)行 URL 編碼

HMAC-SHA256 加密:用AppSecret作為密鑰,對拼接字符串進(jìn)行加密,結(jié)果轉(zhuǎn)大寫即為sign

python

運(yùn)行

# 簽名生成示例代碼(直接復(fù)用)
import hashlib
import hmac

def generate_sign(params, app_secret):
    # 步驟1:按參數(shù)名ASCII升序排序
    sorted_params = sorted(params.items(), key=lambda x: x[0])
    # 步驟2:拼接字符串
    sign_str = "&".join([f"{k}={v}" for k, v in sorted_params])
    # 步驟3:HMAC-SHA256加密并轉(zhuǎn)大寫
    sign = hmac.new(
        app_secret.encode("utf-8"),
        sign_str.encode("utf-8"),
        hashlib.sha256
    ).hexdigest().upper()
    return sign

三、 實(shí)戰(zhàn)調(diào)用:Python 代碼實(shí)現(xiàn)(基礎(chǔ)版 / 增強(qiáng)版通用)

以下代碼為可直接運(yùn)行版本,只需替換APP_KEY、APP_SECRET即可完成調(diào)用,包含「接口請求 + 數(shù)據(jù)解析 + 結(jié)果輸出」全流程。

1. 完整代碼(基礎(chǔ)版item_search)

python

運(yùn)行

import requests
import hashlib
import hmac
import time

# ------------------- 配置區(qū)(替換為你的憑證) -------------------
APP_KEY = "你的AppKey"
APP_SECRET = "你的AppSecret"
API_URL = "https://api.jd.com/routerjson"  # 京東API網(wǎng)關(guān)地址

# ------------------- 簽名生成函數(shù) -------------------
def generate_sign(params, app_secret):
    sorted_params = sorted(params.items(), key=lambda x: x[0])
    sign_str = "&".join([f"{k}={v}" for k, v in sorted_params])
    sign = hmac.new(
        app_secret.encode("utf-8"),
        sign_str.encode("utf-8"),
        hashlib.sha256
    ).hexdigest().upper()
    return sign

# ------------------- 接口調(diào)用函數(shù) -------------------
def jd_item_search(keyword, page=1, page_size=30, sort_type="sales_desc"):
    # 1. 組裝參數(shù)(公共參數(shù)+業(yè)務(wù)參數(shù))
    params = {
        "app_key": APP_KEY,
        "method": "jd.union.open.goods.search",  # 基礎(chǔ)版接口名
        "format": "json",
        "v": "3.0",
        "timestamp": time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()),
        "keyword": keyword,
        "page": str(page),
        "page_size": str(page_size),
        "sort_type": sort_type
    }
    # 2. 生成簽名并加入?yún)?shù)
    params["sign"] = generate_sign(params, APP_SECRET)
    # 3. 發(fā)送請求
    try:
        response = requests.get(API_URL, params=params, timeout=10)
        response.raise_for_status()  # 拋出HTTP異常
        return response.json()
    except Exception as e:
        print(f"接口調(diào)用失?。簕str(e)}")
        return None

# ------------------- 數(shù)據(jù)解析函數(shù) -------------------
def parse_goods_data(result):
    """提取商品核心字段:ID、標(biāo)題、價(jià)格、銷量、庫存"""
    goods_list = []
    if not result:
        return goods_list
    # 解析返回結(jié)果(按京東API格式)
    data = result.get("jd_union_open_goods_search_response", {}) 
                .get("result", {}) 
                .get("data", [])
    for goods in data:
        goods_info = {
            "sku_id": goods.get("skuId", ""),          # 商品唯一ID
            "title": goods.get("goodsName", ""),       # 商品標(biāo)題
            "price": goods.get("price", 0.0),          # 現(xiàn)價(jià)
            "original_price": goods.get("originalPrice", 0.0),  # 原價(jià)
            "sales": goods.get("salesCount", 0),       # 累計(jì)銷量
            "stock": goods.get("stock", 0),            # 庫存
            "shop_name": goods.get("shopName", "")     # 店鋪名稱
        }
        goods_list.append(goods_info)
    return goods_list

# ------------------- 主函數(shù)調(diào)用 -------------------
if __name__ == "__main__":
    # 搜索關(guān)鍵詞:無線藍(lán)牙耳機(jī) 主動降噪,按銷量排序
    result = jd_item_search(
        keyword="無線藍(lán)牙耳機(jī) 主動降噪",
        page=1,
        page_size=50,
        sort_type="sales_desc"
    )
    # 解析數(shù)據(jù)
    goods_data = parse_goods_data(result)
    # 輸出結(jié)果
    print(f"共獲取 {len(goods_data)} 條商品數(shù)據(jù)n")
    for idx, goods in enumerate(goods_data[:5]):  # 打印前5條
        print(f"【{idx+1}】")
        print(f"商品ID:{goods['sku_id']}")
        print(f"標(biāo)題:{goods['title']}")
        print(f"價(jià)格:{goods['price']}元(原價(jià):{goods['original_price']}元)")
        print(f"銷量:{goods['sales']} 庫存:{goods['stock']}")
        print(f"店鋪:{goods['shop_name']}n")

2. 增強(qiáng)版item_search_pro適配修改

只需修改兩處即可切換到增強(qiáng)版:

接口名改為 method": "jd.union.open.goods.search.pro

接口版本改為 v": "4.0

可選添加增強(qiáng)版參數(shù)(如price_from、price_to、brand_id)

四、 數(shù)據(jù)落地:清洗、存儲與應(yīng)用

調(diào)用接口獲取數(shù)據(jù)后,需進(jìn)行數(shù)據(jù)清洗→存儲→業(yè)務(wù)應(yīng)用,才能轉(zhuǎn)化為運(yùn)營價(jià)值。

1. 數(shù)據(jù)清洗(解決 3 個(gè)常見問題)

去重:以sku_id為唯一標(biāo)識,剔除重復(fù)商品(分頁調(diào)用易出現(xiàn)重復(fù))

過濾無效數(shù)據(jù):刪除stock=0(無庫存)、price=0(價(jià)格異常)的商品

字段標(biāo)準(zhǔn)化:統(tǒng)一價(jià)格格式(保留 2 位小數(shù))、截取過長標(biāo)題(避免存儲溢出)

python

運(yùn)行

# 數(shù)據(jù)清洗示例代碼
def clean_goods_data(goods_list):
    cleaned = []
    sku_ids = set()  # 用于去重
    for goods in goods_list:
        sku = goods["sku_id"]
        if sku in sku_ids or goods["stock"] <= 0 or goods["price"] <= 0:
            continue
        # 價(jià)格標(biāo)準(zhǔn)化
        goods["price"] = round(float(goods["price"]), 2)
        goods["original_price"] = round(float(goods["original_price"]), 2)
        # 標(biāo)題截?。ㄇ?0字)
        goods["title"] = goods["title"][:50] + "..." if len(goods["title"]) > 50 else goods["title"]
        sku_ids.add(sku)
        cleaned.append(goods)
    return cleaned

2. 數(shù)據(jù)存儲(2 種常用方式)

存儲方式 適用場景 操作代碼示例
Excel 小批量數(shù)據(jù)、選品清單導(dǎo)出 使用pandas庫:import pandas as pd; pd.DataFrame(cleaned_data).to_excel("京東商品數(shù)據(jù).xlsx", index=False)
MySQL 大批量數(shù)據(jù)、長期監(jiān)控 使用pymysql庫,創(chuàng)建數(shù)據(jù)表后批量插入(參考前文item_search_pro代碼中的save_to_db函數(shù))

3. 業(yè)務(wù)應(yīng)用(3 個(gè)核心場景)

選品分析:篩選sales>5000、price在目標(biāo)區(qū)間的商品,統(tǒng)計(jì)熱銷規(guī)格

競品監(jiān)控:定期調(diào)用接口,對比競品價(jià)格、銷量變化,觸發(fā)調(diào)價(jià) / 補(bǔ)貨預(yù)警

庫存管理:監(jiān)控爆款商品庫存,當(dāng)stock<100時(shí)發(fā)送郵件 / 短信提醒

五、 常見問題與排障指南(避坑必備)

問題現(xiàn)象 原因分析 解決方案
簽名錯(cuò)誤(sign invalid) 1. 參數(shù)未按 ASCII 升序排序;2. AppSecret 錯(cuò)誤;3. timestamp 格式錯(cuò)誤 1. 檢查參數(shù)排序邏輯;2. 核對 AppSecret 是否與應(yīng)用一致;3. 確保時(shí)間格式為yyyy-MM-dd HH:mm:ss
權(quán)限不足(403 Forbidden) 未申請對應(yīng)接口權(quán)限,或應(yīng)用審核未通過 登錄開放平臺,在 “權(quán)限管理” 中確認(rèn)已申請item_search/item_search_pro權(quán)限
數(shù)據(jù)返回為空 1. 關(guān)鍵詞無匹配商品;2. 頁碼超過最大限制;3. 篩選條件過嚴(yán) 1. 優(yōu)化關(guān)鍵詞(更寬泛);2. 檢查頁碼是否≤50(基礎(chǔ)版)/100(增強(qiáng)版);3. 放寬價(jià)格、品牌等篩選條件
調(diào)用頻率超限(429 Too Many Requests) 超過平臺 QPS 限制(通常基礎(chǔ)版 10QPS,增強(qiáng)版 20QPS) 1. 調(diào)用后添加延遲(time.sleep(1));2. 申請?zhí)岣?QPS;3. 緩存重復(fù)搜索結(jié)果

六、 合規(guī)與風(fēng)險(xiǎn)提示

僅使用官方開放接口:嚴(yán)禁爬取京東官網(wǎng)(jd.com)數(shù)據(jù),僅可調(diào)用京東開放平臺 / 京東聯(lián)盟 API

數(shù)據(jù)使用邊界:采集的數(shù)據(jù)僅用于自身運(yùn)營分析,不得轉(zhuǎn)售、泄露或用于商業(yè)競爭

憑證安全:AppKey和AppSecret避免上傳至代碼倉庫(如 GitHub),可通過環(huán)境變量注入


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    2365

    瀏覽量

    66744
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    關(guān)鍵詞搜索京東列表 API 技術(shù)對接指南

    一、前言 在電商數(shù)據(jù)服務(wù)、代購集運(yùn)系統(tǒng)搭建、電商平臺競品分析、自有商城商品同步等業(yè)務(wù)場景中,京東商品列表的精準(zhǔn)、實(shí)時(shí)獲取是核心環(huán)節(jié)之一。 二
    的頭像 發(fā)表于 02-05 16:36 ?347次閱讀

    野莓平臺關(guān)鍵詞商品搜索API接口使用指南

    ? 在電商平臺開發(fā)中,API接口是實(shí)現(xiàn)高效商品搜索關(guān)鍵。野莓平臺(假設(shè)為一個(gè)虛構(gòu)的電商平臺)提供了關(guān)鍵詞
    的頭像 發(fā)表于 02-04 16:48 ?497次閱讀
    野莓平臺<b class='flag-5'>關(guān)鍵詞</b><b class='flag-5'>商品</b><b class='flag-5'>搜索</b>API<b class='flag-5'>接口</b>使用<b class='flag-5'>指南</b>

    京東關(guān)鍵詞的應(yīng)用

    京東關(guān)鍵詞應(yīng)用核心是圍繞搜索匹配與流量獲取,貫穿商品上架、搜索優(yōu)化、付費(fèi)推廣、精細(xì)化運(yùn)營等全鏈路,以精準(zhǔn)匹配用戶需求、提升排名與轉(zhuǎn)化為目標(biāo)。
    的頭像 發(fā)表于 01-20 09:05 ?500次閱讀

    使用京東關(guān)鍵詞搜索接口獲取商品數(shù)據(jù)實(shí)指南

    一、接口接入前期準(zhǔn)備 使用京東關(guān)鍵詞搜索接口前,需完成京東開放平臺的賬號認(rèn)證、應(yīng)用創(chuàng)建及權(quán)限申請,這是
    的頭像 發(fā)表于 01-12 11:46 ?317次閱讀

    京東關(guān)鍵詞API接口獲取

    你想要獲取京東關(guān)鍵詞相關(guān)的 API 接口,以此替代傳統(tǒng)爬蟲,更合規(guī)、穩(wěn)定地獲取商品列表等信息,我會先講解 官方合規(guī)的 API
    的頭像 發(fā)表于 01-09 14:16 ?350次閱讀

    京東關(guān)鍵詞搜索商品列表的Python實(shí)戰(zhàn)

    一、實(shí)現(xiàn)思路分析 URL 構(gòu)造 :京東搜索 URL 格式為 https://search.jd.com/Search?keyword=關(guān)鍵詞q=0.9", "Connection
    的頭像 發(fā)表于 01-09 10:34 ?593次閱讀

    京東關(guān)鍵詞 API 場景的需求梳理模板

    京東關(guān)鍵詞 API 場景需求梳理模板 本模板適用于 聯(lián)盟推廣、商家運(yùn)營、工具開發(fā)、市場分析 等基于京東關(guān)鍵詞 API 的業(yè)務(wù)需求梳理,可直接用于需求文檔撰寫、API 對接方案評審。 核心模塊 填寫項(xiàng)
    的頭像 發(fā)表于 01-08 13:45 ?156次閱讀

    京東關(guān)鍵詞的應(yīng)用場景

    京東關(guān)鍵詞在 API 層面的應(yīng)用,是串聯(lián) 商品檢索、數(shù)據(jù)運(yùn)營、商業(yè)決策、工具開發(fā) 的核心紐帶,結(jié)合京東開放平臺 API(如商品查詢、聯(lián)盟推廣
    的頭像 發(fā)表于 01-08 13:38 ?438次閱讀

    京東關(guān)鍵詞API賦能

    京東關(guān)鍵詞 API 賦能:從數(shù)據(jù)采集到業(yè)務(wù)增長的全鏈路落地指南 京東關(guān)鍵詞 API(以item_search/item_search_pro為核心)的核心賦能價(jià)值,是 打破電商
    的頭像 發(fā)表于 01-07 09:53 ?495次閱讀

    京東關(guān)鍵詞item_search-按關(guān)鍵搜索京東商品

    京東關(guān)鍵詞搜索(item_search)技術(shù)實(shí)現(xiàn)指南:合規(guī) API 調(diào)用 + 數(shù)據(jù)運(yùn)營實(shí)戰(zhàn) 京東商品
    的頭像 發(fā)表于 01-06 09:27 ?819次閱讀

    京東關(guān)鍵搜索商品 API接口item_search Pro

    京東搜索商品 API(item_search Pro)賦能電商運(yùn)營全指南 item_search Pro 是京東
    的頭像 發(fā)表于 01-05 11:03 ?445次閱讀

    利用京東搜索關(guān)鍵詞 API 接口賦能電商運(yùn)營

    利用京東搜索關(guān)鍵詞 API 接口賦能電商運(yùn)營:從技術(shù)調(diào)用到業(yè)務(wù)增長全指南 京東
    的頭像 發(fā)表于 01-05 09:21 ?294次閱讀

    淺談京東關(guān)鍵詞

    一、京東搜索關(guān)鍵詞的核心特性 支持中文直接搜索京東官網(wǎng)支持中文關(guān)鍵詞輸入(如 “筆記本電腦”
    的頭像 發(fā)表于 01-04 10:40 ?629次閱讀

    京東關(guān)鍵詞搜索商品列表的Python爬蟲實(shí)戰(zhàn)

    京東關(guān)鍵詞搜索商品列表 Python 爬蟲實(shí)戰(zhàn) 你想要實(shí)現(xiàn)京東關(guān)鍵詞搜索商品的爬蟲,我會從 合規(guī)
    的頭像 發(fā)表于 01-04 10:16 ?678次閱讀

    搜索關(guān)鍵詞獲取商品詳情接口的設(shè)計(jì)與實(shí)現(xiàn)

    ? ??在電商、內(nèi)容平臺等應(yīng)用中,用戶經(jīng)常通過輸入關(guān)鍵詞搜索商品獲取詳情。設(shè)計(jì)一個(gè)高效、可靠的API接口是核心需求。本文將逐步介紹如何設(shè)計(jì)
    的頭像 發(fā)表于 10-20 15:37 ?504次閱讀
    <b class='flag-5'>搜索</b><b class='flag-5'>關(guān)鍵詞</b><b class='flag-5'>獲取</b><b class='flag-5'>商品</b>詳情<b class='flag-5'>接口</b>的設(shè)計(jì)與實(shí)現(xiàn)