Tony Wang6 分で読めます2026年にNikeをスクレイピングする方法(API & Python)
2026年にNikeをスクレイピングする方法 — 商品検索、カラーウェイごとの完全な詳細、Men/Women/Kids/Jordanのカテゴリツリーを、DIY・ノーコード・構造化APIで取得。
2026年に Nike をスクレイピングする最も手早い方法は、Nike.com のページを自分でパースするのではなく、キーワード検索、カラーウェイごとの完全な商品詳細、そして Men/Women/Kids/Jordan の完全なカテゴリタクソノミーを正規化された JSON として返す構造化 API を呼び出すことです。Nike.com はアカウントなしで閲覧できますが、セルフサービス型の公開 API はなく、実際のボット検出インフラがストアフロントの前面に立ちはだかっており、Nike の利用規約はスクレイピングを直接名指しし、SNKRS では異例なほど積極的にボット禁止を実施しています。このガイドでは3つのアプローチすべてを取り上げ、それぞれが何を返すか、DIY がどこで破綻するか、そして法律上の実情を最初に解説します。
なぜ Nike をスクレイピングするのか?
Nike の商品データとカタログデータは次のような用途を支えます。
- 価格とドロップインテリジェンス — 新モデルの発売前を含め、モデルの価格とカラーウェイのラインナップが時間とともにどう動くかを追跡できます。
- サイズと在庫の監視 — 特定のカラーウェイのサイズ展開を監視し、再入荷や完売を把握できます。
- カラーウェイとレトロの追跡 — Jordan のレトロと限定カラーウェイは動きが速いため、どの
style_colorの組み合わせが存在し、いつ新しいものが登場するかをカタログ化できます。 - アソートメントリサーチ — Men、Women、Kids、Jordan の各ラインにわたる商品カバレッジをマッピングできます。
- 競合ベンチマーキング — Nike のカタログと価格を他のスポーツ用品・スニーカー小売業者と比較できます。
Nike をスクレイピングするのは合法か?
選択肢1: Python で DIY する(そしてなぜ破綻するか)
Nike の商品ページは安定した公開 JSON エンドポイントではなく、埋め込まれたページ状態から描画されるため、DIY のスクレイパーはレンダリング済みのページを取得してパースする必要があります。
import requests
from bs4 import BeautifulSoup
resp = requests.get(
"https://www.nike.com/t/air-force-1-07-mens-shoes-jBrhbr/DD1391-100",
headers={"User-Agent": "Mozilla/5.0 (compatible; research-bot/1.0)"},
)
soup = BeautifulSoup(resp.text, "html.parser")
# Price, size availability, and every other colorway live in embedded
# page state, not consistently exposed as selectable markup
デモは動きますが、その後破綻します。
- 利用規約が明示的。 Nike は「データマイニング、ロボット、スクレイピング、その他類似のデータ収集・抽出手法」を直接名指しし、robots.txt の遵守を求めています。曖昧なケースではありません。
- 実際のボット検出インフラがサイトの前面に立ちはだかっている。 ルーチンな、認証なしのスクレイパーはすぐにチャレンジを受け、ブラウザベースのアプローチも防御側のアップデートに合わせた継続的なメンテナンスが必要です。さらに SNKRS は特にインタラクション分析、アカウント確認、IP レピュテーションチェックを通じてボットを禁止しています。
- すべてのカラーウェイが独立した商品レコード。 1回のページ取得で得られるのは1つの
style_colorのデータだけです。全体像 — 全サイズ、他のすべての色 — を得るには各バリアントを個別に解決する必要があり、slug とstyle_colorの組み合わせは URL だけからは明らかではありません。 - セルフサービス型の公開 API がない。 外部開発者がプログラムによるアクセスを申請できる公式の開発者プログラムはありません。
選択肢2: ノーコードツール
Nike 向けのマーケットプレイスのスクレイパーアクターは存在し、商品ページや短いリストの一回限りの取得には適していますが、DIY と同じボット検出の脆さを引き継ぎ、パイプラインを構築できる安定したバージョン管理されたスキーマは得られません。
選択肢3: 構造化された Nike API
繰り返し実行できるワークフローには、Crawlora の Nike API が検索、商品詳細、カテゴリを正規化された JSON として返します。ページのパースやボット防御のメンテナンスは不要です。キーワードで検索するには次のようにします。
curl "https://api.crawlora.net/api/v1/nike/search?query=air%20force%201" \
-H "x-api-key: $CRAWLORA_API_KEY"
続いて検索結果の colors[] 配列から slug と style_color を解決し、Python で完全な詳細を取得します。
import requests
h = {"x-api-key": "YOUR_API_KEY"}
base = "https://api.crawlora.net/api/v1/nike"
hits = requests.get(f"{base}/search", headers=h, params={"query": "air force 1"}).json()["data"]["products"]
product = hits[0]
slug = product["slug"]
style_color = product["colors"][0]["style_color"]
detail = requests.get(
f"{base}/product",
headers=h,
params={"slug": slug, "style_color": style_color},
).json()["data"]
categories = requests.get(f"{base}/categories", headers=h).json()["data"]["categories"]
検索レスポンスは正規化された JSON で、商品ごとの価格と全カラーウェイを含みます(実際のフィールドはドキュメントで確認してください)。
{
"code": 200,
"msg": "OK",
"data": {
"query": "air force 1",
"page": 1,
"total": 214,
"products": [
{
"slug": "nike-air-force-1-07",
"title": "Nike Air Force 1 '07",
"subtitle": "Men's Shoes",
"price": { "current": 115, "original": 115, "currency": "USD" },
"colors": [
{
"style_color": "DD1391-100",
"color_description": "White",
"image_url": "https://static.nike.com/a/images/t_default/af1-07-white.png"
},
{
"style_color": "CW2288-111",
"color_description": "White/White",
"image_url": "https://static.nike.com/a/images/t_default/af1-07-triple-white.png"
}
]
}
]
}
}
商品詳細は、正確な1組の slug + style_color を、そのバリアントの全サイズと他のすべての利用可能な色に解決します。
{
"data": {
"slug": "nike-air-force-1-07",
"style_color": "DD1391-100",
"title": "Nike Air Force 1 '07",
"color_description": "White",
"price": { "current": 115, "original": 115, "currency": "USD" },
"sizes": [
{ "size": "7", "available": true, "sku": "DD1391-100-070" },
{ "size": "7.5", "available": true, "sku": "DD1391-100-075" },
{ "size": "8", "available": false, "sku": "DD1391-100-080" }
],
"other_colors": [
{ "style_color": "CW2288-111", "color_description": "White/White" },
{ "style_color": "315122-111", "color_description": "White/Black" }
]
}
}
/nike/categories は完全なタクソノミーを返します。Men、Women、Kids、Jordan のすべてのカテゴリとサブカテゴリを、それぞれ閲覧可能な slug として返します。
{
"data": {
"categories": [
{
"name": "Men",
"slug": "men",
"subcategories": [
{ "name": "Shoes", "slug": "men/shoes" },
{ "name": "Jordan", "slug": "men/jordan" }
]
},
{
"name": "Jordan",
"slug": "jordan",
"subcategories": [
{ "name": "Retro", "slug": "jordan/retro" }
]
}
]
}
}
slug/style_color の組み合わせごとに1行ずつ保存し、スケジュールを組んで再実行すれば、ドロップ前の価格の動きとサイズ在庫の変化を追跡できます。
収集できるもの
エンドポイントごとの公開ストアフロントデータです。slug をキーとしたページ分割済みの正規化された検索結果(価格と、colors[](style_color、color_description、image_url)内の全カラーウェイを含む)。slug と style_color を指定した1つのカラーウェイバリアントの完全な商品詳細 — 提供されている全サイズ、価格、他のすべての利用可能な色。そして Men/Women/Kids/Jordan の完全なカテゴリ・サブカテゴリツリー(それぞれ閲覧可能な slug 付き)。あくまで公開されている商品ページのデータのみで、SNKRS のリリースエントリーの仕組み、アカウント情報、注文データは含まれません。
制約とよくある課題
- 検索はキーワードの一致を保証しません。 Nike 自身の検索インデックスは、曖昧な、または意味を成さないクエリに対して、空の結果を返す代わりにおすすめ結果にフォールバックします。API もこの挙動をそのまま反映するため、空でない結果は「キーワードがカタログに存在する確認」ではなく「最も近い一致」として扱ってください。句読点のみのクエリだけが本当に空の結果を返します。
- カラーウェイのファンアウト。 完全な詳細を得るには
slugとstyle_colorの両方が必要で、いずれも検索結果から取得する必要があります。1つの商品のすべてのカラーウェイの全サイズを一度に返す単一の呼び出しはありません。 - フロントエンドの実際のボット検出インフラ。 nike.com への素朴な、または高頻度の自動リクエストはチャレンジを受けると想定してください。特に SNKRS は、インタラクション分析、アカウント確認、IP レピュテーションチェックを通じてボット禁止を実施しています。
- セルフサービス型の公開 API がない。 外部開発者が Nike のストアフロントデータへのプログラムによるアクセスを申請できる公式の開発者プログラムはありません。
- 公開データのみ。 これは商品ページがすでに公開している内容です。SNKRS のエントリーや購入を自動化したり、アカウントや注文情報に到達したりする手段では決してありません。
どこで使われるか
- 価格とドロップインテリジェンス — 主要モデルの価格とカラーウェイラインナップの変化を時間をかけて追跡します。
- サイズと在庫の監視 — カラーウェイのサイズ展開を監視し、再入荷や完売を把握します。
- カタログとタクソノミーのマッピング — Nike の Men/Women/Kids/Jordan カテゴリツリーを社内検索や競合ベンチマーキングのために反映します。
出典
収集を始める
まずは無料でお試しください: 任意の公開 URL を無料ウェブスクレイパーに通すか、アンチボットチェッカーでサイトがボットをブロックするかどうかを確認できます。サインアップ不要です。
検索、商品、カテゴリの各エンドポイントをプレイグラウンドで試し、API ドキュメントでスキーマを確認し、料金をご覧ください。ファストファッションにおける同じ単一ブランド小売業者のパターンについては、Zara をスクレイピングする方法をご覧ください。同じ問題の総合小売版については、Target をスクレイピングする方法とWalmart をスクレイピングする方法をご覧ください。あわせてウェブスクレイピング API の選び方とウェブスクレイピングは合法かもご覧ください。
よくある質問
APIでNikeの商品を検索するにはどうすればよいですか?
Crawlora の /nike/search エンドポイントにキーワードを送ると、価格とカラーウェイ画像を含むページ分割済みの正規化された商品グループが構造化JSONとして返されます。Nikeアカウントは不要です。
Nikeの商品の全サイズと全色を取得できますか?
はい。検索結果の slug と style_color を指定すると、/nike/product が1つのカラーバリアントについて提供されている全サイズと、他のすべての利用可能な色を返します。
Nikeの検索はキーワードの一致を保証しますか?
いいえ。Nike自身の検索インデックスは、曖昧な、または意味を成さないキーワードに対して空の結果を返す代わりにおすすめ結果にフォールバックし、APIもこの挙動をそのまま反映します。句読点のみのクエリだけが本当に空の結果を返します。