WebExtrator MCP
Use MCP to allow the AI Agent to render web pages and extract content, supporting dynamic pages and complex web structures.
High-concurrency web page rendering and intelligent content extraction API, with sync and async callback modes.
Your API key is pre-filled in the snippet — copy and run it in your terminal or IDE.
This is only a basic call example. See the full docs for more parameters and advanced usage.
WebExtrator 不是简单下载 HTML,而是把浏览器渲染、正文抽取、结构化字段和任务追踪放进同一个开发者友好的 API 面。
使用浏览器环境打开目标 URL,支持 wait_until、delay、wait_for_selector 等参数,适合 SPA、新闻页、电商页和登录态页面。
Extract API 返回标题、描述、作者、站点、图片、链接、Markdown 和 structured 字段,业务系统可以直接入库或进入后续模型链路。
商品、文章、食谱、视频、招聘等页面常带有结构化元数据。WebExtrator 会优先利用这些确定性信息,再按需补充语义规范化。
当页面缺少清晰元数据时,可用 enable_llm 启用语义规范化,把长文本整理成更稳定的字段结构。
小页面可以同步返回;长耗时页面可以设置 async 或 callback_url,先拿任务 ID,再通过回调或任务接口取结果。
自定义 Header、User-Agent、资源拦截和超时策略都在请求体里完成,不需要自己维护浏览器池、队列和失败重试层。
请求参数来自公开 OpenAPI:只需要 URL;需要更稳定的抽取时补充页面类型、等待条件、Header 或异步回调地址。
task_id 与 trace_id/webextrator/tasks 回查import requests
resp = requests.post(
"https://api.acedata.cloud/webextrator/extract",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"url": "https://example.com/article",
"expected_type": "article",
"wait_until": "networkidle",
"enable_llm": True,
},
timeout=120,
)
result = resp.json()
print(result["task_id"])
print(result["data"]["title"])
print(result["data"]["markdown"][:400])面向需要“读懂网页”的产品:从 Agent 浏览器到内容采集,从电商监测到知识库入库。
给智能体一个稳定的网页读取工具,把动态网页压缩成标题、正文、链接和字段,而不是把整页 HTML 塞进上下文。
批量抽取文章、产品、文档和 FAQ 页面,保留 Markdown 正文与结构化元数据,便于切块、检索和引用。
通过 Product 类页面信息提取商品标题、描述、图片和结构化字段,减少为每个站点写解析器的维护成本。
统一提取 headline、byline、siteName、description 与正文 Markdown,让跨站内容进入同一个数据模型。
对招聘、目录、活动、资源集合等页面先渲染再抽取,结合任务回查做批量补数和审计。
Render API 返回最终 URL、状态码、标题、HTML、文本和 User-Agent,可用于检查跳转、页面状态和客户端可见内容。
不需要搭浏览器集群,也不需要额外消息队列。先拿密钥,再提交 URL,最后消费结果。
在 Ace Data Cloud 控制台申请 WebExtrator 服务,并为应用创建访问密钥。
调用 Render 或 Extract API。需要动态内容时设置等待条件,需要异步处理时设置 async 或回调地址。
读取 data.html、data.text、data.markdown 或 data.structured,进入数据库、搜索索引或模型上下文。
自建浏览器、队列、回调和结构化层的工程量很快会超过业务本身。WebExtrator 把这些能力收束成一个可调用的 API。
| 能力 | WebExtrator | Some Others |
|---|---|---|
| 动态页面 | 真实浏览器渲染,可配置等待事件、选择器和延迟。 | 常只返回静态 HTML,遇到 SPA 或延迟加载内容需要额外工程。 |
| 结构化结果 | 正文 + Markdown + structured 在同一个响应里返回。 | 通常需要自己再写正文抽取、字段映射和清洗逻辑。 |
| 长耗时任务 | 支持异步,可通过回调或任务查询接口获取结果。 | 需要自己维护队列、任务状态、回调和历史记录。 |
| 请求控制 | 按请求控制 Header、User-Agent、资源拦截、超时和等待策略。 | 参数分散在爬虫框架和浏览器上下文里,难以暴露给业务方。 |
三类接口覆盖从“拿页面”到“拿字段”再到“回查任务”的完整流程。
适合网页状态检查、HTML 归档、正文预处理和需要自己控制后处理逻辑的场景。
/webextrator/render适合 Agent、RAG、内容聚合、电商监测等需要把网页转成业务对象的场景。
/webextrator/extractexpected_type 与 enable_llm 优化结果适合批量任务、慢页面、回调失败补偿和基于 trace_id 的问题排查。
/webextrator/tasksid、trace_id、ids、trace_ids 查询Render 与 Extract 使用同一基础单价;Tasks 用于查询历史任务,不额外收费。
用于打开 URL 并返回渲染后的 HTML、文本、标题、最终 URL 与页面状态。
在渲染基础上输出正文、Markdown、图片、链接和结构化字段,适合直接接入数据链路。
通过任务 ID 或 trace ID 获取异步与历史任务结果,用于回调补偿、批量回查和排障。
价格按当前 cost 规则折算展示;最终扣费以平台服务页和账单记录为准。
关于 WebExtrator 参数、同步异步、结构化字段和费用的几个关键问题。
如果你只需要页面渲染后的 HTML、文本、标题、状态码和最终 URL,用 Render。若你希望平台同时整理正文、Markdown、图片、链接和结构化字段,用 Extract。
目标页面加载慢、需要额外等待选择器、或者批量处理时建议使用 async: true 或 callback_url。接口会先返回任务 ID,结果可通过回调或 Tasks API 获取。
OpenAPI 当前支持 product、article、general。它是页面类型提示,可以减少启发式判断的不确定性。
可以。请求体支持 headers 和 user_agent。如果目标页面依赖 Cookie 或特定 Header,可以按请求传入;请确保你有权限访问目标内容。
可以用 block_resources 拦截 image、font、media、stylesheet、xhr、fetch 等资源类型,并用 wait_until、timeout、delay 控制等待策略。
当前 cost 规则中 /webextrator/tasks 为免费接口。Render 与 Extract 按请求计费,页面展示的价格来自当前成本规则折算。
把 WebExtrator 抽取出来的内容继续接入搜索、对话、图像或视频生成链路。
Extract structured content (title, body, images, product fields) from the given URL, with automatic page type detection.
Render a web page at the given URL and return its full HTML, final URL, title, and status code.
Web extractor task query API — check the status and result of a render/extract task.
We offer various credit packages. The more you purchase, the higher the discount you receive.
up to46% OFFUse MCP to allow the AI Agent to render web pages and extract content, supporting dynamic pages and complex web structures.
Configuration Method
Connect to the current service in Claude Code:
/mcp to check the connection and tool list.export ACEDATACLOUD_API_TOKEN='YOUR_API_TOKEN'
claude mcp add --scope user --transport http 'webextrator-mcp' 'https://webextrator.mcp.acedata.cloud/mcp' --header 'Authorization: Bearer ${ACEDATACLOUD_API_TOKEN}'