小売アナリティクス:競合品揃えデータセットを設計する
Web Data Collection Specialist
TL;DR:
- 競合の品揃えデータセットには、「商品」と「オファー」の別レコードが必要です。 1つの商品が、複数の小売業者・販売者・パック構成の下で登場し得ます。
- カテゴリのカバレッジには分母が必要です。 観測したスコープと収集の完全性が分かっている場合にのみ棚を比較します。
- 空の棚レコードには複数の意味があります。 廃番品、不完全な取得、在庫切れオファーを区別します。
- マッチング品質が、正当化できる比較範囲を決めます。 厳密な識別子によるマッチと推定マッチは区別して管理します。
Introduction
2つの小売業者が同じヘッドセットを掲載しています。あるページには充電ケースが含まれ、別のページはヘッドセット単体を販売しています。タイトルだけでマッチングすると、パック構成の違いが消えてしまいます。一方、URL数をそのまま商品数と数えると、1つの商品が複数カテゴリに現れる場合に逆方向の問題が生じます。
品揃えの幅を比較する前に、「1商品行」が何を表すのかを定義します。そのうえで、小売業者のリスティング、オファー、カテゴリカバレッジを別々のレコードとして保持します。
The Dataset Behind the Shelf Comparison
承認済みカテゴリページから出発し、そこで見つけたリスティングをエンリッチし、オーバーラップを報告する前に商品アイデンティティを解決します。W3C プロベナンスモデルを使うと、各行をそれを生成したカテゴリページまたは商品ページまでトレースできます。
Record the Boundaries of Each Shelf Scan
カテゴリ観測には、小売業者名、市場、収集パス、およびクロール期間が含まれます。ソース側のパンくずリストと、割り当てた社内カテゴリを保存します。ページネーションや承認済みリスティング探索がどこまで進んだか、収集を妨げたページ状態があればそれも保持します。
カテゴリフィルターや次ページコントロールの操作には、ブラウザベースの Web オートメーションが必要になる場合があります。カテゴリ URL、フィルター、最後に完了したページを実行単位で保存しておき、部分的な結果を小売業者の棚全体と誤読しないようにします。
カテゴリ定義では、何が含まれるかを明示すべきです。「ヘッドホン」売り場には、オーバーイヤー製品、イヤホン、アクセサリ、再生品が混在していることがあります。ソースカテゴリから社内タクソノミーへのクロスウォークを使いましょう。分類変更と、実際の棚の動きを切り分けられるようにバージョン管理します。
Give Products, Listings, and Offers Their Own Keys
商品アイデンティティはアイテムそのものを記述し、オファーは小売業者または販売者がそれをどのように販売しているかを記述します。ソース識別子は名前空間付きで保持し、画面上に見えるブランド名と型番を保存し、顧客が受け取る内容を変えるサイズやパック数も記録します。Schema.org GTIN プロパティは、存在し検証された場合に結合に使える商品識別子を定義しています。
選択操作によって型番やパック属性が読み込まれる承認済みページについては、クラウドブラウザでカタログを取得します。Scrapeless の料金を使って、そのようなエンリッチ目的の訪問とカテゴリ探索を別枠で予算化します。
ProductGroup 語彙で示される関係を用いて、商品グループとそのバリアントを分けて管理します。小売業者の「モデルファミリー」URLは複数バリアントを公開している場合があります。どのバリアントがどの販売者からオファーされていたかを観測レコードに保持し、アナリストが比較のレベルを一貫して選べるようにします。
Start Scraping with Scrapeless
Scrapeless で Web スクレイピングとオートメーションのワークフローを強化しましょう。
今日登録すると、5ドル分の無料クレジットを獲得できます — クレジットカード不要です。今すぐ Scrapeless ダッシュボードで無料クレジットを請求してください。
Resolve Pack and Variant Differences
マッチレコードには、結合を正当化した根拠を記録します。パックとバリアントが一致している場合は、検証済み識別子を使います。共通の識別子が利用できない場合は、ブランド名とメーカー型番が役に立ちます。タイトル類似度は候補生成には有効ですが、商品属性が異なるときには裏付けが必要です。
ヘッドセットの例では、品揃え幅レポートでは両オファーを1つのモデルファミリーに属させつつ、価格分析では別々のパックレコードとして扱うことができます。充電ケースの有無という属性とマッチ信頼度をデータセット内に保持し、どちらの比較にも耐えられるようにします。
| Table | One row represents |
|---|---|
| Product variant | 解決されたモデルとオプションの組み合わせ |
| Retailer listing | 小売業者のソーススコープ付きリスティング ID |
| オファー観測 | 取得時点でのマーケットにおけるセラーからのバリアントに対するオファー |
| カテゴリ実行 | 小売カテゴリに対して観測されたスコープと完全性 |
| マッチ決定 | 記録された属性によって裏付けられたバージョン管理されたマッピング |
カバレッジフラグを用いたオーバーラップのレポート
有用なオーバーラップ指標は、比較可能なカテゴリとスコープ内でマッチした商品を比較します。マッチ済み・未解決・ソース側のみの商品数をオーバーラップ率と並べて表示します。ある小売業者のスキャンがカテゴリの最初のページだけをカバーしている場合は、その比較を「部分的」とマークします。
アナリストが後から価格モニタリングのワークフローを追加する場合は、それをマッチしたバリアントまたはパックに結合します。幅をカバーするためのプロダクトファミリーレベルのマッチは、オファーを比較するには粒度が粗すぎる場合があります。
カテゴリの存在と在庫状況は別々の指標として扱ってください。リストされている商品が在庫切れでも、リストされた幅の一部としてカウントできます。完全なカバレッジと、利用可能であれば後続の観測に基づく明確なルールに対してのみ、ディスティング(掲載終了)イベントを予約します。Etsy プロダクト抽出ワークフローは、下流で正規化する前にソース識別子を保持する関連例を提供しています。
結論
マーチャンダイジングに、説明可能なカウントを提供してください。オーバーラップと並行して、マッチの粒度、観測されたスコープ、未解決アイテムをレポートし、個々の商品に関する異議のためにリスティングの証拠を保持します。
アソートメントデータセットを構築する準備はできましたか?
アソートメント分析ワークフローを構築している開発者と話すには、Discord または Telegram のコミュニティに参加してください。Scrapeless ダッシュボードでアカウントを作成して開始しましょう。
FAQ
Q: すべての商品 URL を別々のアソートメントアイテムとしてカウントすべきですか?
レポートで定義した商品粒度でカウントしてください。バリアント URL や重複した掲載は、同じ商品または同じファミリーを表している場合があります。
Q: 欠落しているアイテムはいつディスティング(掲載終了)と見なされますか?
ディスティングの判断には、比較可能で十分に完全なカバレッジが必要です。そのルールを満たす証拠が揃うまでは、観測されたスコープからの不在として記録します。
Q: アソートメントモニタリングにはプロキシが必須ですか?
訪問者のマーケットに依存するカタログでは、許可された地域ルートが役立ちます。承認済みフィードを持つローカルカタログは、通常のアクセス方法を利用できる場合があります。
Q: カテゴリページが変化したり、チャレンジを表示した場合はどうなりますか?
影響を受けたカバレッジを不完全として記録してください。次回の実行を指標に利用する前に、承認済みアクセスを確認し、セレクタとカテゴリマッピングを検証します。
Q: AI エージェントなしで実行できますか?
スケジューラと決定論的なマッチルールにより、コアパイプラインを実行できます。ホストごとに制限された同時実行数を使用し、あいまいなマッチはレビューに回してください。
Q: このデータセットは任意の公開リスティングを利用できますか?
ソースの利用規約、許可、および適用法を確認してください。許可されたディスカバリールートを使用し、再利用が必要な場合は法務に相談してください。
Scrapelessでは、適用される法律、規制、およびWebサイトのプライバシーポリシーを厳密に遵守しながら、公開されているデータのみにアクセスします。 このブログのコンテンツは、デモンストレーションのみを目的としており、違法または侵害の活動は含まれません。 このブログまたはサードパーティのリンクからの情報の使用に対するすべての責任を保証せず、放棄します。 スクレイピング活動に従事する前に、法律顧問に相談し、ターゲットウェブサイトの利用規約を確認するか、必要な許可を取得してください。



