Scarnox · Blog

スクレイピングのための住宅用プロキシとデータセンタープロキシの比較

住宅用プロキシもデータセンタープロキシも、トラフィックが現れる送信元のアドレスを変えますが、両者は交換可能ではありません。データセンタープロキシは、データセンターでホストされたサーバーを経由して通信します。住宅用プロキシは、インターネットサービスプロバイダーが家庭用回線に割り当てたアドレスを経由して通信します。違いは速度、サイトがそのアドレスをどれだけ信頼するか、そしてそれぞれの運用コストに現れます。このガイドでは両者を比較し、スクレイパーにどちらが必要かを判断する簡単なテストを紹介します。

結論を先に

ターゲットが自動化対策を厳しくしておらず、高いスループットが必要で、寛大なレート方針のサイトからデータを集める場合は、データセンタープロキシを使ってください。ターゲットがアドレスの出所で評価している場合、特定の国や都市が必要な場合、またはデータセンターのアドレスが次々にブロックされる場合は、住宅用プロキシを使ってください。多くのプロジェクトは両方を使います。作業の大部分にはデータセンター、それ以外を受け付けないページには住宅用、という組み合わせです。

比較

信頼性。 サイトは、どのアドレス範囲がホスティング事業者に属するかを知っており、多くは既定でそれらのスコアを低くします。住宅用のアドレスは、他の一般の家庭の訪問者と同じに見えるため、最初からより良いスコアで始まります。信頼性は、住宅用を選ぶ最大の理由です。

速度。 データセンターの接続は通常、より速く安定しています。住宅用の接続は、一般消費者向けのネットワークを経由するため、遅く、切断されることもあります。住宅用のトラフィックでは、タイムアウトを長めにし、リトライを増やす計画を立ててください。

地域指定。 住宅用のプールは通常、国単位、さらに地域や都市単位まで細かく指定できることが多いです。サイトが所在地によって価格、在庫、コンテンツを変える場合は、これが重要になります。データセンターのプールは、より粗い指定になりがちです。

アドレスの安定性。 データセンターのアドレスは通常、評判を長く保つため、固定セッションに役立ちます。住宅用のアドレスは頻繁に変わるため、セッションの継続性はプロバイダーの品質に依存する度合いが高くなります。

リクエストあたりのコスト。 データセンタープロキシは、大量のボリュームでは一般に安価です。住宅用のトラフィックは料金体系が異なり、同じ数のリクエストでも通常は高くなります。どちらも安いと決めつけず、プロバイダーの現在の料金を確認してください。

公平なテストを行う

選ぶ確実な方法は、両方を実際のターゲットに対してテストすることです。テストは小さく、公平に保ちます。

  1. 実際の作業負荷を代表する10ページをターゲットから選ぶ。
  2. 同じスクリプトを、同じペースとヘッダーで、データセンタープールと住宅用プールの両方を通して実行する。
  3. 成功率、応答時間の中央値、ブロックやチャレンジページの数を測定する。
  4. 生の数値が最も良いものではなく、成功の目標を満たしたうえで、より安いプールを選ぶ。
import time
import requests

def measure(urls: list[str], proxy: str) -> dict:
    ok, blocked, times = 0, 0, []
    for url in urls:
        start = time.monotonic()
        try:
            r = requests.get(url, proxies={"http": proxy, "https": proxy}, timeout=30)
            times.append(time.monotonic() - start)
            if r.status_code in (403, 429, 503):
                blocked += 1
            else:
                ok += 1
        except requests.RequestException:
            blocked += 1
        time.sleep(2)  # テストも礼儀正しく
    return {
        "success_rate": ok / len(urls),
        "blocked": blocked,
        "median_seconds": sorted(times)[len(times) // 2] if times else None,
    }

プロキシの種類ごとに同じ URL のリストで実行し、結果を並べて比較してください。両方のネットワークの負荷は時間帯によって変わるため、テストは別の時間帯にも繰り返してください。

キャプチャが出てきた場合

ブロックとキャプチャは異なる問題です。住宅用プロキシはキャプチャが出る頻度を減らせますが、キャプチャが出た場合は有効なトークンが依然として必要です。Scarnox で現在ライブのキャプチャ種別は PopularCaptcha です。トークンの取得と送信の方法は PopularCaptcha の Python ガイドで示しています。サイトがトークンをネットワークアドレスに結びつけている場合は、ページと解決に同じプロキシを使ってください。その選択については、プロキシありとなしのキャプチャ解決を参照してください。

よくある間違い

最も多い間違いは、データセンターのアドレスで十分に対応できる作業のために、住宅用のトラフィックを購入することです。ターゲットが寛大なレート方針の公開カタログであれば、追加のコストで得られるものはわずかです。逆の間違いは、静かな午後に一度だけテストして、プールが信頼できると結論づけることです。負荷は一日を通して変わるため、比較は複数の時間帯で実行してください。三つ目の間違いは、成功率だけを測定することです。見た目は正常でも、実際にはチャレンジや空のテンプレートであるページは成功ではありません。ステータスコードだけでなく、レスポンスの内容も確認してください。

住宅用プールの倫理

住宅用プロキシには、データセンタープロキシにはない責任が伴います。そのアドレスは実在する家庭に属しています。アドレスを、関係者の確かな同意のもとに調達しているプロバイダーを選び、契約前にどのように調達しているかを尋ねてください。所有者の同意なくインストールされたデバイスやソフトウェアを経由させるサービスは避けてください。それはプライバシーへの害であり、あなたのプロジェクトにとっても法的リスクです。

責任を持ったスクレイピング

次のステップ

クレジットカード不要、無料トライアルクレジット付きで、アカウントを作成し、自分が所有するページで PopularCaptcha のフローを試せます。現在の料金は料金ページをご覧ください。