Market NinjaMarket Ninja
使用情境

批次匯出

分頁走訪資料集中的大規模資料切片——用於 LLM 上下文、自建資料庫或資料分析——同時遵守每日配額限制。

匯出前先瀏覽類目

在拉取整個電商平台的商品目錄之前,先透過類目清單縮小範圍通常會更有效率——先呼叫 GET /categories,再將取得的 category_path 作為 GET /productscategory 篩選參數。完整指南(包括在任意層級深度的包含比對,以及如何理解空的 category_path: [])請參閱類目。您也可以用同樣的方式, 透過 brand 參數把匯出範圍縮小到某個特定品牌——可用名稱與完整範例請參閱 品牌

分頁

page_size 預設值為 100,最大為 500——相較於典型的面向 UI 的 API,這個預設值刻意設得更寬鬆, 專為這種使用情境設計。請依回應中的 meta.total 驅動迴圈,而不是事先自行計算總頁數:

#!/bin/bash
PAGE=1
while true; do
  RESPONSE=$(curl -s -G -H "Authorization: Bearer mn_live_..." \
    "https://data.marketninja.ru/v1/products" \
    --data-urlencode "marketplace=wildberries" \
    --data-urlencode "category=Зоотовары" \
    --data-urlencode "page_size=500" \
    --data-urlencode "page=$PAGE")

  echo "$RESPONSE" | jq -c '.data[]' >> products.jsonl

  TOTAL=$(echo "$RESPONSE" | jq '.meta.total')
  if [ $((PAGE * 500)) -ge "$TOTAL" ]; then break; fi
  PAGE=$((PAGE + 1))
done

注意每日配額

配額計算的是回應中實際回傳的記錄數,而非請求次數——一次分頁匯出所消耗的配額, 取決於您實際取得了多少筆商品記錄,與使用了多少次請求無關。X-Quota-Limit/X-Quota-Used 標頭只會出現在 429 quota_exceeded 回應中——請檢查回應狀態,一旦觸發就停止, 而不要事先預測剩餘配額。

配額會於 UTC 午夜重置。如果您要匯出整個資料集,建議將任務分散到數天完成, 而不是一次跑完;也可以聯絡我們為您的金鑰申請更高的限額。

用於 LLM 上下文

如果目標是為模型提供一份最新的資料切片(而非維護資料集的完整本機副本),通常更好的做法是 依使用者的每次提問做針對性的窄範圍查詢,而不是事先「以防萬一」批次匯出全部資料:透過 尋找商品中的情境,定位使用者實際詢問的那項商品或賣家, 然後把這段精簡的 JSON 直接交給模型即可。

Last updated on

On this page