~/ecommerce/stockx-scraper
StockX Scraper — スニーカー価格・入札・出品・成約
StockXの全サイズの最安出品価格、最高入札価格、出品数に加え、配送スピード別の在庫、直近の成約、90日間・12か月間の価格統計を取得。必要に応じて、個々の成約履歴と完全なオーダーブックも取得できます。すべての商品にカタログデータ、バーコード、画像が付きます。
リセールマーケット
TypeScript
米国
カテゴリecommerce / リセールマーケット
言語TypeScript
スタックTypeScript
マーケット米国
出力クリーンでRAG対応のJSON
主な機能
全サイズの最安出品価格・最高入札価格・出品数を1レコードに収録——商品の代表価格だけではありません
配送スピード別(スタンダード、エクスプレス、翌日配送)の在庫と、最安出品がすでにStockXの倉庫にあるかどうか
直近の成約とその変動、そして過去90日間・12か月間の価格:平均、レンジ、成約数
リクエストに応じて個々の成約を取得:日時、価格、サイズ、スタンダードかエクスプレスか(新しい順)
リクエストに応じてオーダーブックを取得:サイズごとに、出品と入札が並ぶすべての価格と、その価格に並ぶ件数
すべての商品にカタログデータ付き:商品名、ブランド、スタイルコード、カラーウェイ、発売日、定価、バーコード、画像、360°ビュー
あらゆる形式の商品ページに加え、検索・ブランド・カテゴリページもStockX自身の並び順で取得
活用例
- リセール在庫の価格設定:各サイズの現在の売れ価格と、その価格で競合する出品者の数
- 発売商品の定価に対するプレミアムを、実行のたびに追跡
- スニーカー、アパレル、アクセサリー、家電、コレクティブル、トレーディングカードにわたる市場調査
- StockXと小売店や他のマーケットプレイスとの間の裁定取引
- コレクションや店舗の在庫を、現在の市場価格で評価
- ApifyのMCPサーバー経由で、AIエージェントにリアルタイムのスニーカー市場データを提供
入力パラメータ
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
startUrls | array | 必須 | StockXの商品ページ、または検索・ブランド・カテゴリページ |
maxProducts | number | 任意 | この件数の商品を保存した時点で停止(0 = 無制限) |
maxProductsPerListing | number | 任意 | 検索・ブランド・カテゴリページ1ページごとに読み取る商品数(デフォルト100、最大1,000) |
includeSales | boolean | 任意 | 直近の個別成約を追加(デフォルトはオフ) |
maxSalesPerProduct | number | 任意 | 商品ごとに追加する成約の件数(デフォルト50) |
includeOrderBook | boolean | 任意 | オーダーブックを追加(デフォルトはオフ) |
maxOrderBookLevels | number | 任意 | 片側(出品と入札)ごとの価格レベル数(デフォルト100) |
maxConcurrency | number | 任意 | 同時に読み取る商品数(デフォルト3) |
proxyConfiguration | object | 任意 | リクエストに使用するプロキシ(デフォルト:Apifyのデータセンタープロキシ) |
出力例
1つの商品を、1サイズ・1成約・片側1価格レベルに絞って掲載しています。金額はセント単位で、6300は$63です。
1{
2 "source": {
3 "id": "de258c04-2f2a-4806-9d8c-9c84e17d45ea",
4 "canonicalUrl": "https://stockx.com/adidas-campus-00s-core-black",
5 "retailer": "stockx",
6 "currency": "USD"
7 },
8 "title": "adidas Campus 00s Core Black",
9 "brand": "adidas",
10 "details": { "brandStyleID": "HQ8708" },
11 "variants": [
12 {
13 "title": "US M 10",
14 "options": ["10"],
15 "price": { "current": 6300, "currentFormatted": "$63", "original": 11000, "stockStatus": "InStock", "stockCount": 42 },
16 "extraInfo": {
17 "gtins": [{ "type": "UPC", "identifier": "195747807682" }],
18 "lowestAsk": 6300,
19 "highestBid": 3700,
20 "askCount": 42
21 }
22 }
23 ],
24 "price": { "current": 3300, "currentFormatted": "$33", "original": 11000, "stockStatus": "InStock", "stockCount": 630 },
25 "extraInfo": {
26 "retailPrice": 11000,
27 "releaseDate": "2023-02-17",
28 "market": {
29 "lowestAsk": 3300,
30 "lowestAskSize": "US M 4.5",
31 "highestBid": 6600,
32 "highestBidSize": "US M 6",
33 "lastSale": { "amount": 10000, "changeValue": 7100 },
34 "last90Days": { "averagePrice": 6300, "rangeLow": 2000, "rangeHigh": 20000, "salesCount": 633 }
35 },
36 "sales": [
37 { "soldAt": "2026-10-12T01:40:57.622Z", "amount": 10000, "size": "US M 10", "orderType": "STANDARD" }
38 ],
39 "orderBook": {
40 "asks": [{ "size": "US M 4.5", "amount": 3300, "count": 34 }],
41 "bids": [{ "size": "US M 6", "amount": 6600, "count": 1 }]
42 }
43 }
44}
レコードの構造はFarfetch Scraperと同じなので、StockXのリセール価格と小売価格を1つのテーブルにまとめられます。price.originalが定価になるのは、最安出品価格が定価を下回る場合のみで、セール品がセール前価格を表示するのと同じ考え方です。
ヒント
- 成約とオーダーブックは必要なときだけオンにしてください。 どちらもアドオンで、何かが見つかった商品に対してのみ課金されます。
maxProductsPerListingでリストを小さく保てます。 StockXは1つの検索・ブランド・カテゴリにつき最大1,000商品までしか表示しません。何が動いているかをざっと見るなら、最初の20件を読み取れば十分です。- 商品ページはどんな形式でも指定できます。 言語プレフィックス付きのページ、サイズ指定、購入・売却ページ、特定の出品者のリスティングは、いずれもその商品を指しており、1回の実行で各商品は1度だけ保存されます。
よくある質問
データはどのくらい新しいですか?
実行中に商品ごとにライブで読み取ります。出品・入札・成約は、その時点のStockX自身のデータです。
サイズ別の最安出品価格が、商品全体の最安出品価格より高いのはなぜですか?
商品の最安出品価格と最高入札価格は、全サイズを通じた最も安い出品と最も高い入札で、別々のサイズのものであることが多くあります。どのサイズかは`lowestAskSize`と`highestBidSize`でわかります。
他のマーケットや通貨にも対応していますか?
現時点では未対応です。米国マーケットを対象とし、価格は米ドルです。金額はすべてセント単位の整数です。
StockXのスクレイピングは許可されていますか?
このActorは、StockXがあらゆる訪問者に表示している商品データを読み取ります。StockXの利用規約は自動アクセスとそのデータの利用を制限しています。収集したデータの利用方法はご自身の責任となります。