POST https://api.acedata.cloud/webextrator/extract
WebExtrator インテリジェント抽出 API は、URL を 型化された構造化結果 に変換します —— 記事、商品、レシピ、動画、ディスカッション、求人など、同時にクリーンな Markdown とプレーンテキストを添付します。原始的な HTML ではなく「クリーンな構造化データ」が必要なときに使用するインターフェースです。
基盤は三層のパイプラインです:
- schema.org JSON-LD マッパー —— 決定的、ゼロ LLM コスト。Wikipedia / BestBuy / AllRecipes / YouTube / 大部分のニュース / 大部分の商品ページをカバーします。
- 型化 LLM 抽出 —— schema.org がヒットしなかった場合のみトリガーされます。ページタイプに応じてスキーマを選択し、Zod による厳密な検証を行います。
- Readability + Markdown フォールバック —— 常に実行され、前の二層で埋められなかったトップレベルフィールドを補完します。
申請プロセス
WebExtrator サービスページを使用するには、まず Ace Data Cloud コンソール で API トークンを取得し、保管してください。
まだログインまたは登録していない場合、自動的にログインページにリダイレクトされ、登録とログインを促されます。完了後、現在のページに自動的に戻ります。
1つの API トークンでプラットフォームのすべてのサービスを呼び出すことができ、各サービスごとに個別に申請する必要はありません。 初回申請時には無料枠が付与され、無料で体験できます;枠が不足した場合は コンソール で共通残高をチャージできます。
📘 完全なドキュメント:WebExtrator サービスページ →
認証
リクエストパラメータ
Extract は すべての Render API のパラメータ(url、user_agent、timeout、wait_until、delay、wait_for_selector、block_resources、headers、cookies、callback_url、bypass_cache、cache_ttl_seconds、async)を受け入れ、さらに二つの Extract 専用フィールドを追加します:
ページが schema.org JSON-LD を持っている場合、enable_llm は無効です —— 決定的マッパーが直接結果を出し、LLM 呼び出しを無駄にすることはありません。あなたは 無料で 型化結果を得ることができます。
同期レスポンス
トップレベルフィールド
data.structured サブフィールド
schema.org マッパーのカバレッジ
優先順位に従ってソート(ヒットした場合はstructured.schemaOrg.primary として扱う):
マッパーの処理:
@graphコンテナ(再帰的に展開);@type配列(例["Recipe", "NewsArticle"]—— 両方を認識し、優先順位で勝つ);http://schema.org/プレフィックスのバリエーション;- ネストされた
OfferとAggregateOffer(後者はlowPriceを読み取る); - 相対画像 URL(
finalUrlによって絶対に解決)。
LLM 型化スキーマ
enable_llm: true かつ schema.org に primary がない場合、抽出器は URL ヒューリスティック
(または expected_type ヒント)に従って以下のいずれかの Zod スキーマ検証モデル出力を選択:
LLM が成功した場合、トップレベルフィールドに「最終手段」のバックフィルを行う:
article→description/byline/publishedAt/languageproduct→descriptiondiscussion→description(= body の最初の 280 字)/byline(= author)/publishedAt(= postedAt)recipe→description/byline(= author)video→description/byline(= channel)/publishedAt(= uploadDate)job→description/byline(= company)/publishedAt(= datePosted)
キャッシュ
同じリクエストは同じ Redis キーにハッシュされる:webextrator:cache:extract:<sha256(canonical-json)>。キャッシュキーは 無視 される async、
bypass_cache、cache_ttl_seconds(これは操作スイッチであり、応答には影響しない)。cookies /
headers はバケットキャッシュされる。
キャッシュにヒットした応答は
data.cached: true と data.cacheStoredAt: <unix-ms> を持つ。
非同期モードとコールバック
async: true を設定すると非同期モードに入る(callback_url を提供すると自動的に入る)。プラットフォームはすぐに返す(HTTP 200):
callback_url に POST する(設定されている場合)。また、後で /webextrator/tasks を通じて積極的にクエリすることもできる。
例
1. Wikipedia 記事(schema.org にヒットし、LLM は必要ない)
data.structured.schemaOrg.primary 重要フィールド:
2. BestBuy 商品页(schema.org 命中)
3. AllRecipes 食谱页(含营养与步骤)
4. HN 讨论页(无 JSON-LD —— 需要启用 LLM)
data.structured.llm.data:
byline = "alice"、publishedAt = "..."。
5. Amazon 商品页(Amazon 无 JSON-LD —— 需要启用 LLM)
data.structured.llm.data(类型化 product):
Python (requests)
Node.js (fetch)
提示与坑
expected_typeを指定できる場合は指定してください。 無料のヒントで、ヒューリスティック判断をスキップし、URLパターンが 内蔵リストにないページに特に有用です。enable_llm: trueはschema.orgにヒットしたページで無料です。 LLMはschema.orgに プライマリがない場合にのみ呼び出されるため、デフォルトでオンにしても安全です。- デバッグ時はまず
rawSignals.hasJsonLdを確認してください。 もしtrueですがstructured.schemaOrg.primaryがnullの場合、ページが私たちのマッパーを使用していてもカバーされていない@typeを使用していることを示します —— イシューを提起してください、私たちが追加します。 structured.llmErrorは情報提供的です。 リクエストは成功し、ヒューリスティック結果は引き続き返されます。llmError.errorを見て原因を特定してください(タイムアウト、JSON解析失敗、Zod検証失敗)。- 非記事ページの
links[]は関連性のソートを行いません。 “上限100件+無効なプロトコルをフィルタリング”に従って、できる限りクリーンアップします。 - キャッシュヒットも課金されます。 キャッシュは遅延とブラウザプールの保護のためのものであり、節約のためではありません。

