API
メルカリ API:出品検索と商品詳細を JSON で
メルカリには開発者向けの公開 API がありません。ここで返すのは、サイトが公開している出品情報です。エンドポイントは二つで、日本が既定、米国は別指定になります。相場を見るというより、いま何がいくらで出ているかを追う用途に向いています。
エンドポイント
| endpoint | 返ってくるもの | 必須 |
|---|---|---|
| search | 出品のキーワード検索。日本が既定で、米国を指定する場合はキーワードが必須です。ページングに対応しています。 | すべて任意 |
| product/detail | 選んだ国の出品 1 件を id または URL で読み取ります。米国ではタイトル、説明、米ドル価格が返ります。 | item_id |
呼び出しごとにクレジットを消費します。失敗した呼び出しとブロックされた呼び出しは無料です。
動作する例
国の指定は後から効いてくる部分です。日本と米国では通貨も出品の性格も違うため、混ぜて集計すると一見まともな数字が出てしまいます。どちらを見ているかは最初に決めてください。
リクエスト
curl -X POST https://api.reefapi.com/mercari/v1/search \
-H "x-api-key: あなたのキー" \
-H "content-type: application/json" \
-d '{"query": "ギター", "page": 1}'レスポンス(抜粋)
{
"ok": true,
"data": {
"results": [
{
"item_id": "...",
"title": "...",
"price": 18000,
"currency": "JPY",
"status": "..."
}
]
},
"meta": { "record_count": 60, "cache_hit": false, "mode": "live" }
}自分でスクレイピングを書く代わりに
メルカリのスクレイパーは最初の一回なら動きます。つらいのはそのあとで、ページ構造が変わるとパーサーはエラーを出さずに空を返し、ボット対策が働けばリクエストは静かに弾かれます。どちらも手元では「出品がない」と同じに見えます。
ここでは保守はこちらの仕事です。構造が変われば直し、ブロックされた場合はエラーコードを返し、その呼び出しは課金しません。
一度きりの調査なら自分のスクリプトのほうが安いです。これは正直にそう言います。継続して動かすものなら、費用はコードではなく気づかない故障に積み上がります。
制限と正直な注記
- メルカリの公式 API ではなく、提携関係もありません。
- エンドポイントは検索と詳細の二つだけです。出品者の一覧やカテゴリツリーはこの motor にはありません。
- 日本が既定で、米国は別途指定します。通貨が異なるため混在させた集計は意味を持ちません。
- キャッシュはありません。毎回その時点の状態を取得します。