すべての記事

価格インテリジェンス企業が毎日10,000 SKUを追跡する方法

200以上の競合サイトにわたり毎日10,000個の製品価格を追跡することは、深刻なインフラストラクチャの課題です。ある価格設定企業がこれをどのようにスマートに解決したかを紹介します。

価格インテリジェンスは、競争の激しいEコマースの基盤です。競合他社の価格をリアルタイムで追跡する企業は、自社の価格設定を動的に調整し、マージンを保護し、市場シェアを獲得できます。しかし、毎日10,000の製品ページを確実に監視するシステムを構築することは、深刻なエンジニアリングの課題です。

本記事では、一般的な価格インテリジェンス運用の仕組み、それに伴う技術的なハードル、およびFourAのようなデータ収集APIがどのようにインフラストラクチャレイヤーを簡素化するかについて解説します。

課題の規模

中規模の価格インテリジェンス企業は、以下を追跡している可能性があります。

  • 50の競合ウェブサイトにわたる10,000のSKU
  • SKUあたり1日3回の価格チェック(朝、昼、晩)
  • これは、異なるレイアウト、保護システム、レンダリング要件を持つサイトにわたる、毎日30,000回のページフェッチに相当します

この規模では、手動でのメンテナンスを行う余裕はありません。セレクターの破損、IPのブロック、サイトのリニューアルが発生するたびに、数時間のエンジニアリング時間が奪われ、データに欠落が生じます。

アーキテクチャ

1. 製品カタログ

システムは構造化されたカタログから始まります。SKU識別子が競合他社のURL、および価格要素のCSSセレクターにマッピングされています。

{
  "sku": "LAPTOP-X1-16GB",
  "targets": [
    {"site": "competitor-a.com", "url": "https://competitor-a.com/laptop-x1", "selector": ".price-current", "type": "single"},
    {"site": "competitor-b.com", "url": "https://competitor-b.com/products/12345", "selector": "[data-price]", "type": "browser"},
    {"site": "competitor-c.com", "url": "https://competitor-c.com/item/laptop-x1", "selector": ".product-price", "type": "proxy"}
  ]
}

ターゲットごとにタスクタイプが異なることに注目してください。各サイトには異なる特徴があります。

2. 収集パイプライン

スケジューラーが収集ジョブをバッチでディスパッチします。各ジョブはFourAのAPIを呼び出します。

import requests
import time

def collect_price(target):
    resp = requests.post("https://eu.api.foura.ai/api/v1/tasks", headers={
        "Authorization": f"Bearer {API_KEY}",
        "Content-Type": "application/json"
    }, json={
        "url": target["url"],
        "type": target["type"],
        "options": {"waitFor": target["selector"]} if target["type"] == "browser" else {}
    })
    return resp.json()

重要なポイント:FourAがproxyのローテーション、TLSフィンガープリント、ブラウザのレンダリング、およびリトライロジックを処理します。収集パイプラインは、URLを送信してresponseをパースするだけで済みます。

3. 価格の抽出と正規化

生のHTMLはパーサーを通過し、価格値の抽出、通貨の正規化、およびエッジケース(セール価格、「〜から」の範囲、在庫切れのインジケーター)の処理が行われます。

4. 変更検知とアラート

新しい価格はすべて、前回の測定値と比較されます。大幅な変更(通常は2〜5%のしきい値)が発生すると、アナリストや自動価格改定システムにアラートが送信されます。

主な課題

サイト固有の複雑さ: 各競合サイトには、独自のレイアウト、保護レベル、およびレンダリング動作があります。画一的なアプローチはすぐに破綻します。

データの鮮度: 古い価格は、価格がないことよりも悪影響を及ぼします。システムは時間枠内に毎日の収集を完了する必要があり、そのためには失敗やリトライを効率的に処理する必要があります。

コスト管理: 1日30,000回のrequestが発生すると、インフラストラクチャのコストがかさみます。ターゲットごとに適切なタスクタイプを使用する(可能な場合はsingle、必要な場合のみbrowser)ことで、コストを大幅に削減できます。

なぜAPIが自作に勝るのか

これを社内で構築する場合、企業はターゲットサイトごとにproxyプール、ブラウザファーム、および検出防止コードを維持する必要があります。そのインフラストラクチャのオーバーヘッドこそが、真のコストです。初期のスクレイパーを作成するエンジニアリング時間ではなく、それを動作させ続けるための継続的なメンテナンスがコストとなります。

FourAのようなデータ収集APIは、その複雑さを吸収します。企業は、Chromeを最新の状態に保つことではなく、自社を真に差別化するもの(製品カタログ、価格設定アルゴリズム、顧客関係)に集中できます。


価格インテリジェンスで優位に立っている企業は、最大のスクレイピングチームを持つ企業ではありません。インフラストラクチャの構築をやめ、より優れた価格設定モデルの構築を始めた企業です。そこにこそ、真の競争優位性があります。

詳細については、ハウツーガイドおよびAPIリファレンスをご覧ください。