IP アドレスをローテーションする方法

プロキシを使用して、コーディングを必要とせずに IP を簡単にローテーションし、信頼性の高いデータ収集を行う方法を解説します。
1 分読
Rotating IPs as part of using proxies for data collection

この記事では、次の内容について説明します。

  • ローテーション IP とは
  • IP ローテーションを検討すべき理由
  • IP アドレスをローテーションする方法
  • Bright Data の Proxy Manager を使用した IP アドレスのローテーション
  • Proxy Rules を使用した自動 IP ローテーション

ローテーション IP とは

ローテーション IP とは、データソースへの接続に使用する IP アドレスを定期的に変更するプロキシサーバーの一種を指します。ローテーションは、特定の時間で、または特定の数の要求が行われた後に行うよう設定できます。ローテーション IP は、ターゲット Web サイトによる IP アドレスの追跡とブロックをより困難にするため、Web スクレイピングや、Web サイトのブロックや制限を回避するためによく使用されます。

IP ローテーションを検討すべき理由

Web サイトをスクレイピングまたはクロールする場合、同じ IP から人間よりもはるかに速く要求が送信されます。Web サイトは、使用されている IP に簡単にボットやクローラーとしてフラグを立て、不正確な情報を送ったり、ユーザーを完全にブロックしたりできます。サイトは、攻撃や望ましくない行動からの自己防衛策として、このようなレート制限を採用しています。IP アドレスを定期的に変更またはローテーションすることで、レート制限を回避し、検出されないようにできます。これにより、ターゲットサイトは IP をクローラーとして識別できなくなります。プロキシをローテーションすると成功率が上がり、欲しいデータを手に入れることができます。

IP アドレスをローテーションする方法

Bright Data の使いやすいオープンソースの Proxy Manager を使用すると、次の設定が可能になります。

  • IP を変更する前に許可された要求の数
  • IP が変更されるまでの時間
  • ローテーションプールの IP の数

Bright Data の Proxy Manager を使用して IP アドレスを自動的にローテーションするためのガイドライン

  1. Proxy Manager をダウンロードします
  2. 「新しいプロキシの追加」ポートをクリックします
  3. 希望の IP の種類を選択し、「保存」をクリックします
  4. 「IP コントロール」タブに移動します
  5. 「プールサイズ」、つまりローテーションする IP の数を選択します
  6. 一定回数の要求を行った後に IP を変更するには、「最大要求数」フィールドを使用します
  7. 特定の時間後に IP をローテーションするには、「セッション期間」フィールドを使用します

Proxy Rules を使用した自動 IP ローテーション

  1. トリガーを選択します。トリガーとは、受信時に IP を自動的にローテーションする特定の URL、ステータスコード、応答本文、または要求の時間枠です
  2. 「アクション」の横にある「新しい IP で再試行」または「新しいプロキシポートで再試行 (ウォーターフォール)」を選択します
  3. IP をローテーションする前に要求を再試行する場合は、「再試行」の横にある数字を選択するか、自分で数字を入力します

それでも問題が解決されない場合や、手動ローテーションよりも高度なテクニックを使用したい場合、Bright Data はターゲットを絞ったソリューションを提供できます。ローテーション住宅用ネットワークを使用すると、世界中の何百万台ものユーザーデバイスにアクセスできます。これにより、ユーザーの視点からデータ収集トラフィックをルーティングして、最も正確なオープンソースデータポイントを取得できます。

住宅用プロキシを Proxy Manager と一緒に使用すると、カスタマイズされ自動化されたルールを使用し、要求がさまざまなプロキシネットワークを経由してルーティングされる、「ウォーターフォール機能」を活用しやすくなります。

あなたは下記にもご興味がおありかもしれません

web scraping with claude blog image
ウェブデータ

2025年のクロードによるウェブスクレイピング

Pythonを使ってWebスクレイピングを自動化し、構造化データを楽に抽出するClaude AIの使い方を学ぶ。
18 分読
Building AI-Ready Vector Datasets for LLMs blog image
AI

LLMのためのAI対応ベクトルデータセット構築:Bright Data、Google Gemini、Pineconeを使ったガイド

大規模言語モデル(LLM)は、私たちが情報にアクセスし、インテリジェントなアプリケーションを構築する方法を変革しています。LLMの可能性を最大限に引き出すには、特にドメイン固有の知識や独自のデータを使用する場合、高品質で構造化されたベクトルデータセットを作成することが重要です。LLMの性能と精度は、入力データの品質に直接結びついています。準備不足のデータセットは劣悪な結果をもたらす可能性があり、一方、十分にキュレーションされたデータセットはLLMを真のドメイン・エキスパートに変えることができます。 このガイドでは、AIに対応したベクターデータセットを生成するための自動パイプラインの構築方法を順を追って説明する。 課題:LLMのためのデータ収集と準備 LLMは膨大な汎用テキストコーパスで学習されますが、商品関連のクエリへの回答、業界ニュースの分析、顧客フィードバックの解釈など、特定のタスクやドメインに適用すると、不足することがよくあります。LLMを真に役立てるには、ユースケースに合わせた高品質のデータが必要です。 このデータは通常、ウェブ上に分散していたり、複雑なサイト構造の背後に隠されていたり、ボット対策によって保護されていたりする。 当社の自動ワークフローは、データセット作成の最も困難な部分を処理する合理化されたパイプラインでこれを解決します: コア技術の概要 パイプラインを構築する前に、関連するコアテクノロジーと、それぞれがワークフローをどのようにサポートしているかを簡単に見ておこう。 ブライトデータスケーラブルなウェブデータ収集 AIに対応したベクターデータセットを作成するための最初のステップは、関連性のある高品質なソースデータを収集することです。ナレッジベースやドキュメンテーションのような内部システムから得られるものもあるが、大部分は公共のウェブから得られることが多い。 しかし、最近のウェブサイトは、CAPTCHA、IPレート制限、ブラウザフィンガープリントなどの高度なボット対策メカニズムを使用しているため、大規模なスクレイピングは困難である。 Bright Dataは、データ収集の複雑さを抽象化するWeb Unlocker APIでこの課題を解決します。プロキシのローテーション、CAPTCHAの解決、ブラウザのエミュレーションを自動的に処理するため、データへのアクセス方法ではなく、データに集中することができます。 Google Gemini: インテリジェント・コンテンツ・トランスフォーメーション Geminiは、Googleによって開発された強力なマルチモーダルAIモデルのファミリーであり、様々なタイプのコンテンツを理解し処理することに優れている。私たちのデータ抽出パイプラインにおいて、Geminiは3つの重要な機能を果たします: このAIを活用したアプローチは、特に以下のような使用例において、脆弱なCSSセレクタや壊れやすい正規表現に依存する従来の方法よりも大きな利点をもたらす: AIがデータ抽出プロセスにどのような変化をもたらしているかについては、Using AI for Web Scrapingをご覧ください。スクレイピングのワークフローにGeminiを実装するための実践的なチュートリアルをお探しの場合は、包括的なガイドをご覧ください:GeminiによるWebスクレイピングをご覧ください。 文の変形意味埋め込み文の生成 エンベッディングは、高次元空間におけるテキスト(または他のデータタイプ)の密なベクトル表現である。これらのベクトルは意味的な意味を捉え、コサイン類似度やユークリッド距離のようなメトリクスを用いて測定される、類似したテキスト片を近接したベクトルで表現することを可能にする。この特性は、セマンティック検索、クラスタリング、検索拡張生成(RAG)のようなアプリケーションで重要である。 Sentence Transformersライブラリは、高品質の文や段落の埋め込みを生成するための使いやすいインターフェースを提供する。Hugging Face Transformersの上に構築され、意味タスクのために微調整された幅広い事前学習済みモデルをサポートしています。 このエコシステムで最も人気があり、効果的なモデルの1つがオールMiniLM-L6-v2である: より大きなモデルはより微妙なエンベディングを提供するかもしれないが、all-MiniLM-L6-v2は性能、効率、コストの間で非常に優れたバランスを提供する。その384次元ベクトルは ほとんどの実用的なユースケース、特に初期段階の開発やリソースに制約のある環境では、このモデルで十分すぎる。エッジケースにおける精度のわずかな低下は、通常、スピードとスケーラビリティの大幅な向上によって相殺されます。そのため、AIアプリケーションの最初のイテレーションを構築する場合や、控えめなインフラストラクチャでパフォーマンスを最適化する場合は、all-MiniLM-L6-v2を使用することをお勧めします。 Pineconeベクトル埋め込み画像の保存と検索 テキストがベクトル埋め込みデータに変換されると、それを効率的に保存、管理、照会するための専用のデータベースが必要になります。従来のデータベースはこのために設計されていません。ベクトル・データベースは、埋め込みデータの高次元の性質を扱うために特別に設計されており、RAGパイプライン、セマンティック検索、パーソナライゼーション、その他のAI駆動型アプリケーションに不可欠なリアルタイムの類似性検索を可能にします。 Pineconeは、開発者フレンドリーなインターフェイス、低レイテンシの検索パフォーマンス、完全に管理されたインフラストラクチャで知られる人気のベクトルデータベースです。ベクトル検索インフラストラクチャの複雑さを抽象化することで、複雑なベクトルインデックスと検索を効率的に管理します。主なコンポーネントは以下の通りです: Pineconeは2つのデプロイメントアーキテクチャを提供する:ServerlessとPod-Based です。ほとんどのユースケース、特に開始時や動的な負荷に対処する場合は、シンプルさとコスト効率からサーバーレスが推奨されます。 セットアップと前提条件 パイプラインを構築する前に、以下のコンポーネントが適切に設定されていることを確認する。 前提条件 各APIキーの生成方法については、以下のツール固有の設定セクションを参照してください。 必要なライブラリのインストール このプロジェクトのコアとなるPythonライブラリをインストールする: これらのライブラリーは提供している: 環境変数の設定 プロジェクトのルート・ディレクトリに.envファイルを作成し、APIキーを追加する: ブライトデータ設定 Bright DataのWeb Unlockerを使用するには: 実装例と統合コードについては、Web Unlocker GitHub […]
6 分読
AI

LLMにおけるスーパーバイズド・ファインチューニングとは?

このPythonガイドでは、概念、ツール、ワークフロー、そしてAIプロジェクトを向上させる実践的な例を取り上げています。
7 分読