AIエージェントにデータを供給する:Scraper APIアクターを使用してAmazon、Google、LLMデータを解放する
Senior Cybersecurity Analyst
主要なポイント:
- アクターごとに1つのHTTPリクエスト。 Scrapeless Scraper APIは、ターゲット(Amazon商品のページ、Google検索、AIの回答など)を、指定された
scraper.*アクターへの単一のPOSTリクエストに変換します。ブラウザを操作する必要も、パーサーを維持する必要もありません。 - アクターファミリーごとに2つのエンドポイント。 サイトおよびSERPアクター(
scraper.amazon,scraper.google.search,scraper.shopeev2)はPOST /api/v1/scraper/requestを使用し、アクターごとに異なる形状のパースされたJSONを返します。AI回答アクター(scraper.chatgpt,scraper.gemini,scraper.copilot,scraper.grok,scraper.perplexity,scraper.aimode)はPOST /api/v2/scraper/executeを使用し、{ status, task_id, task_result }のエンベロープを返します。 - どこでも1つの認証ヘッダー。 すべての呼び出しで
x-api-token: <your key>が必要です。1つのアカウントキーで全てのアクターをカバーします。 - 構造化された出力、生のHTMLではない。 サイトアクターはパースされた構造化JSONを返します —
scraper.amazonはパースされたresultとレンダリングされたhtmlの両方を含み、scraper.google.searchはトップレベルでSERPフィールドを返します — 一方でv2アクターは、JSONフィールドとして回答本文に加え、引用とリンクも返します。 - 描画が遅い場合は非同期。 一部のサイトアクターは
taskIdを返します;リクエストを送信し、GET /api/v1/scraper/result/{taskId}をポーリングしてペイロードが準備できるまで待ちます。 - 最初は無料。 新しいScrapelessアカウントには無料のScraper APIクレジットが含まれています — app.scrapeless.comでサインアップしてください。
導入:アクターモデル
従来のスクレイパーは、アンチボット層を突破し、ページをレンダリングし、必要なフィールドをパースするという3つの仕事が組み合わさったものです。Scrapeless Scraper APIは、これら3つを1回の呼び出しにまとめます。あなたはアクター(特定のターゲット用に事前構築されたエクストラクタ)を指定し、入力を渡すことで構造化データを得ることができます。プロキシローテーション、レンダリング、およびパースはサーバーサイドで実行されます。
アクターカタログは3つのグループを網羅しています:eコマース(scraper.amazon, scraper.shopeev2)、検索(scraper.google.search)、およびAI回答(scraper.chatgpt, scraper.gemini, scraper.copilot, scraper.grok, scraper.perplexity, scraper.aimode)。このガイドでは、認証、2つのリクエスト形状、各ファミリーからの具体例、非同期パターン、および実際に見ることになるエラーについて説明します。
何ができるのか
- 構造化された商品データを取得 — タイトル、価格、評価、可用性、ASIN — をマーケットプレイスのURLから1回のリクエストで取得します。
- 検索結果ページをJSONとして読み取る — 自分でSERPマークアップをスクレイピングするのではなく。
- 引用を含むAI回答をキャプチャ — モデルがプロンプトに対して返した正確なテキストに加え、引用したソースを含めて、GEOおよびブランドの可視性を追跡します。
- どこからでも実行 — プレーンHTTPで動作するため、curl、Pythonの
requests、Nodeのfetch、またはHTTPクライアントを持つ任意の言語で変更なしに動作します。
なぜScraper APIなのか
- ブラウザもパーサーも維持する必要なし。 アクターはサーバーサイドでレンダリングとパースを行い、DOMを歩く必要なくフィールドを受け取ります。
- 1つのキー、ファミリーごとに1つの形状。 単一の
x-api-tokenで全てのアクターを認証し、各ファミリーは一貫したエンベロープを返します。そのため、一度書いたクライアントラッパーがターゲット全体で再利用されます。 - 住宅用出口とレンダリングが組み込まれています。 アクターがジオルーティングとJavaScriptレンダリングを行うため、入力を送信して結果を読み取るだけです。
無料プランでAPIキーを取得できます:app.scrapeless.com。Scraper APIは、Universal Scraping APIやScraping Browserとともに価格カタログに位置しています。
前提条件
- ScrapelessアカウントとAPIキー — app.scrapeless.comでサインアップ。
- 簡単なテストに
curl、または以下のクライアントにPython 3.10+ / Node.js 18+を使用。 - HTTPとJSONの基本的な知識。
環境にキーを格納して、コードに入らないようにします:
bash
export SCRAPELESS_API_KEY=your_api_token_here
2つのリクエスト形状
Scraper APIは2つのエンドポイントを持っています。アクターが使用するエンドポイントは、返す内容によって異なります。
| ファミリー | エンドポイント | アクター | 返すもの |
|---|---|---|---|
| サイト / SERP | POST https://api.scrapeless.com/api/v1/scraper/request |
scraper.amazon, scraper.google.search, scraper.shopeev2 |
アクター固有のパースされたJSON(例:scraper.amazon → { html, metadata, result };scraper.google.search → organic_results、… トップレベル) |
| AI回答 | POST https://api.scrapeless.com/api/v2/scraper/execute |
scraper.chatgpt, scraper.gemini, scraper.copilot, scraper.grok, scraper.perplexity, scraper.aimode |
{ status, task_id, task_result } |
両方とも { "actor": "<名前>", "input": { … } } のJSONボディと、ヘッダー x-api-token を受け取ります。input フィールドはアクターごとに異なります(各例を参照)。
例1 — Amazon製品 (v1)
bash
curl -X POST https://api.scrapeless.com/api/v1/scraper/request \
-H "Content-Type: application/json" \
-H "x-api-token: $SCRAPELESS_API_KEY" \
-d '{
"actor": "scraper.amazon",
"input": { "action": "product", "url": "https://www.amazon.com/dp/B09B8V1LZ3" }
}'
レスポンスにはレンダリングされた html、metadata ブロック、パースされた result オブジェクトが含まれています。result はほとんどのパイプラインが直接使用するものです:
json
// result(省略) — スキーマは標準、値はライブ実行から
{
"asin": "B09B8V1LZ3",
"title": "Amazon Echo Dot (最新モデル) …",
"final_price": "$49.99",
"availability": "在庫あり",
"reviews_count": "193514",
"seller_name": "Amazon.com"
}
Pythonでの使い方:
python
import os, requests
resp = requests.post(
"https://api.scrapeless.com/api/v1/scraper/request",
headers={"x-api-token": os.environ["SCRAPELESS_API_KEY"]},
json={"actor": "scraper.amazon",
"input": {"action": "product", "url": "https://www.amazon.com/dp/B09B8V1LZ3"}},
timeout=120,
)
resp.raise_for_status()
print(resp.json()["result"]) # パースされたオブジェクト; resp.json()["html"] は全ページ
scraper.google.search は同じv1エンドポイントを使用し、入力は { "q": "web scraping" } ですが、パースされたSERPはトップレベルで返されます — organic_results, search_information, pagination, related_searches — metadata とともに、result ラッパーなしで。
例2 — AIの回答 (v2)
AI回答アクターは prompt と country を受け取り、モデルの返答とその出典を返します:
bash
curl -X POST https://api.scrapeless.com/api/v2/scraper/execute \
-H "Content-Type: application/json" \
-H "x-api-token: $SCRAPELESS_API_KEY" \
-d '{
"actor": "scraper.chatgpt",
"input": { "prompt": "最良のウェブスクレイピングツールは何ですか?", "country": "US" }
}'
すべての成功した呼び出しは同じエンベロープを返します:
json
// スキーマは標準、値はライブ実行から
{
"status": "success",
"task_id": "…",
"task_result": {
"model": "gpt-5-5",
"result_text": "…モデルの回答…",
"content_references": [ { "title": "…", "url": "https://…" } ],
"links": [ "https://…" ]
}
}
task_result には回答(result_text)、引用元(content_references)、抽出されたリンク(links)が含まれます — 引用分析はフィールドリードであり、パースではありません。
これらのアクターのいくつかは、追加の必須フィールドを受け取ります。これは、APIが省略した場合に検証メッセージで名前を示します:scraper.copilot には "mode": "smart" が必要で、scraper.grok には "mode": "MODEL_MODE_AUTO" が必要で、scraper.perplexity は答えを基にするために "web_search": true を受け入れます。scraper.gemini と scraper.aimode には { prompt, country } だけが必要です。
アクターごとのフィールドリストの詳細については、LLM Chat Scraperのドキュメントを参照してください。これらのアクターの一つでの完全なエンドツーエンドビルドについては、Google AI概要スクレーパーガイドが引用レベルキャプチャを通じて説明しています。
非同期アクター:送信後にポーリング
一部のサイトアクターは重いページをレンダリングし、非同期で応答します。POSTはペイロードではなく taskId を返します:
json
{ "taskId": "ef2f7cef-…", "message": "タスク進行中" }
タスクが完了するまで結果エンドポイントをポーリングし、その後同じペイロード形状を読む:
bash
curl "https://api.scrapeless.com/api/v1/scraper/result/$TASK_ID" \
-H "x-api-token: $SCRAPELESS_API_KEY"
# 実行中: { "state": "processing", "taskId": "…" }
scraper.shopeev2 はこのパターンに従います。shopee.sg の製品URLを送信し({ "url": "https://shopee.sg/<name>-i.<shopid>.<itemid>" })、製品JSONが到着するまでポーリングします。ストアフロントは地域制限があり、サポートされていないドメインは エリアがサポートされていません を返します。
受け取るデータ
| アクターファミリー | トップレベルキー | データの所在 |
|---|---|---|
| サイト / SERP (v1) | アクター特有 (amazon: html, metadata, result; google: organic_results, … トップレベル) |
パースされた構造化フィールド; scraper.amazon は全レンダリングされた html も返す |
| AI回答 (v2) | status, task_id, task_result |
task_result には回答テキスト、引用、およびリンクが含まれる |
欠損フィールドをnullableとして扱う — モジュールは製品、クエリ、地域、モデルによって異なります。まず、アクターが表示する内容を読みます(scraper.amazonのresult、scraper.google.searchのトップレベルSERPフィールド、またはv2アクターのtask_result)、そしてアクターが解析しないフィールドが必要な時のみ、scraper.amazonのhtmlにフォールバックします。 |
FAQ
Q: どのように認証しますか?
すべてのリクエストには、ヘッダーx-api-token: <your key>が含まれています。1つのアカウントキーはすべてのアクターで使用できます。app.scrapeless.comで無料プランのキーを作成します。
Q: アクターはどのエンドポイントを使用しますか — v1かv2か?
サイトおよびSERPアクター(scraper.amazon、scraper.google.search、scraper.shopeev2)は/api/v1/scraper/requestを使用します。AI回答アクター(scraper.chatgpt、scraper.gemini、scraper.copilot、scraper.grok、scraper.perplexity、scraper.aimode)は/api/v2/scraper/executeを使用します。
Q: アクターの必要な入力フィールドをどのように見つけますか?
リクエストを送信します。フィールドが欠けている場合、APIはそれを名指しでバリデーションメッセージで応答します(例えば、scraper.copilotはmodeが必要であることを報告します)。アクターごとのリファレンスはScrapeless APIドキュメントにあります。
Q: これらのサイトをスクレイピングすることは合法ですか?
これらのアクターは公開されているデータを収集します。ルールは管轄区域および各サイトの利用規約によって異なるため、スケールで実行する前に関連するToSを確認し、法律の専門家に相談してください。GDPRやCCPAで保護された個人データを収集しないでください。
Q: プロキシは必要ですか?
いいえ。居住地域のイーグレスとジオルーティングはアクターに組み込まれています — 入力を送信し、アクターがネットワークレイヤーを処理します。地域に制限されたターゲットは、サポートされているストアフロントドメインしか受け付けません。
Q: AIエージェントやSDKなしでこれを実行できますか?
はい。これは通常のHTTPです — curl、requests、fetch、または任意のHTTPクライアントが直接動作します。SDKは必要ありません。
結論
Scraper APIは、スクレイプを1つの決定と1つのリクエストに簡素化します:アクターを選び、{ actor, input }をx-api-tokenと共に送信し、構造化されたフィールドを読み取ります。サイトおよびSERPアクターは/api/v1/scraper/requestでアクター特有の形状の解析済みJSONで応答します; AI回答アクターは/api/v2/scraper/executeで均一な{ status, task_id, task_result }エンベロープで応答します; 遅延レンダリングは、ポーリングするtaskIdで非同期に応答します。クライアントウィrapperを1回書いて、パイプラインが必要とするアクターを指すだけです。
AI駆動のデータパイプラインを構築する準備はできましたか?
私たちのコミュニティに参加して、無料プランを取得し、Scraper APIパイプラインを構築している開発者とつながりましょう: Discord · Telegram。
無料のScraper APIクレジットを取得するには、app.scrapeless.comにサインアップし、アクターを必要なサイト、クエリ、またはAI回答に向けて指示してください。
Scrapelessでは、適用される法律、規制、およびWebサイトのプライバシーポリシーを厳密に遵守しながら、公開されているデータのみにアクセスします。 このブログのコンテンツは、デモンストレーションのみを目的としており、違法または侵害の活動は含まれません。 このブログまたはサードパーティのリンクからの情報の使用に対するすべての責任を保証せず、放棄します。 スクレイピング活動に従事する前に、法律顧問に相談し、ターゲットウェブサイトの利用規約を確認するか、必要な許可を取得してください。



