Skip to main content
POST https://api.acedata.cloud/webextrator/extract WebExtrator インテリジェント抽出 API は、URL を 型化された構造化結果 に変換します —— 記事、商品、レシピ、動画、ディスカッション、求人など、同時にクリーンな Markdown とプレーンテキストを添付します。原始的な HTML ではなく「クリーンな構造化データ」が必要なときに使用するインターフェースです。 基盤は三層のパイプラインです:
  1. schema.org JSON-LD マッパー —— 決定的、ゼロ LLM コスト。Wikipedia / BestBuy / AllRecipes / YouTube / 大部分のニュース / 大部分の商品ページをカバーします。
  2. 型化 LLM 抽出 —— schema.org がヒットしなかった場合のみトリガーされます。ページタイプに応じてスキーマを選択し、Zod による厳密な検証を行います。
  3. Readability + Markdown フォールバック —— 常に実行され、前の二層で埋められなかったトップレベルフィールドを補完します。
URL の重複リクエストは Redis 結果キャッシュにキャッチされ、<1 ms で返されます。

申請プロセス

WebExtrator サービスページを使用するには、まず Ace Data Cloud コンソール で API トークンを取得し、保管してください。 まだログインまたは登録していない場合、自動的にログインページにリダイレクトされ、登録とログインを促されます。完了後、現在のページに自動的に戻ります。 1つの API トークンでプラットフォームのすべてのサービスを呼び出すことができ、各サービスごとに個別に申請する必要はありません。 初回申請時には無料枠が付与され、無料で体験できます;枠が不足した場合は コンソール で共通残高をチャージできます。
📘 完全なドキュメント:WebExtrator サービスページ →

認証

リクエストパラメータ

Extract は すべての Render API のパラメータ(urluser_agenttimeoutwait_untildelaywait_for_selectorblock_resourcesheaderscookiescallback_urlbypass_cachecache_ttl_secondsasync)を受け入れ、さらに二つの Extract 専用フィールドを追加します:
ページが schema.org JSON-LD を持っている場合、enable_llm は無効です —— 決定的マッパーが直接結果を出し、LLM 呼び出しを無駄にすることはありません。あなたは 無料で 型化結果を得ることができます。

同期レスポンス

トップレベルフィールド

data.structured サブフィールド

schema.org マッパーのカバレッジ

優先順位に従ってソート(ヒットした場合は structured.schemaOrg.primary として扱う): マッパーの処理:
  • @graph コンテナ(再帰的に展開);
  • @type 配列(例 ["Recipe", "NewsArticle"] —— 両方を認識し、優先順位で勝つ);
  • http://schema.org/ プレフィックスのバリエーション;
  • ネストされた OfferAggregateOffer(後者は lowPrice を読み取る);
  • 相対画像 URL(finalUrl によって絶対に解決)。

LLM 型化スキーマ

enable_llm: true かつ schema.org に primary がない場合、抽出器は URL ヒューリスティック (または expected_type ヒント)に従って以下のいずれかの Zod スキーマ検証モデル出力を選択: LLM が成功した場合、トップレベルフィールドに「最終手段」のバックフィルを行う:
  • articledescription / byline / publishedAt / language
  • productdescription
  • discussiondescription(= body の最初の 280 字)/ byline(= author)/ publishedAt(= postedAt)
  • recipedescription / byline(= author)
  • videodescription / byline(= channel)/ publishedAt(= uploadDate)
  • jobdescription / byline(= company)/ publishedAt(= datePosted)
バックフィルは、確定的データソースが対応するフィールドを埋めていない場合にのみトリガーされる —— LLM は常に最後の手段である。

キャッシュ

同じリクエストは同じ Redis キーにハッシュされる: webextrator:cache:extract:<sha256(canonical-json)>。キャッシュキーは 無視 される asyncbypass_cachecache_ttl_seconds(これは操作スイッチであり、応答には影響しない)。cookies / headers バケットキャッシュされる。 キャッシュにヒットした応答は data.cached: truedata.cacheStoredAt: <unix-ms> を持つ。

非同期モードとコールバック

async: true を設定すると非同期モードに入る(callback_url を提供すると自動的に入る)。プラットフォームはすぐに返す(HTTP 200):
タスクが完了すると、完全なエンベロープをあなたの callback_urlPOST する(設定されている場合)。また、後で /webextrator/tasks を通じて積極的にクエリすることもできる。

1. Wikipedia 記事(schema.org にヒットし、LLM は必要ない)

data.structured.schemaOrg.primary 重要フィールド:

2. BestBuy 商品页(schema.org 命中)

schema.org 抽出:

3. AllRecipes 食谱页(含营养与步骤)

schema.org 抽出:

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.primarynullの場合、ページが私たちのマッパーを使用していてもカバーされていない@typeを使用していることを示します —— イシューを提起してください、私たちが追加します。
  • structured.llmErrorは情報提供的です。 リクエストは成功し、ヒューリスティック結果は引き続き返されます。llmError.errorを見て原因を特定してください(タイムアウト、JSON解析失敗、Zod検証失敗)。
  • 非記事ページのlinks[]は関連性のソートを行いません。 “上限100件+無効なプロトコルをフィルタリング”に従って、できる限りクリーンアップします。
  • キャッシュヒットも課金されます。 キャッシュは遅延とブラウザプールの保護のためのものであり、節約のためではありません。