用途
OmniRoute Web Fetch 用于抓取指定 URL 的内容,并转换为干净的 Markdown,以便后续处理或作为模型输入。它通过 OmniRoute 代理外部抓取服务,目前资料中提到的提供方包括 Jina Reader(jina/reader)和 Firecrawl(firecrawl/scrape),也支持原始 HTML 剥离模式。
主要能力
- 抓取单个 URL,输出 markdown(默认)、html 或 text 格式。
- 返回结构化结果,包含 url、title、markdown,以及可选的 links 和 images 列表。
- 支持从
/v1/models/web查询可用的抓取模型(kind 为 webFetch)。 - 当某个提供方被目标站点屏蔽时,可切换其他模型重试。
使用方式
需先配置环境变量 OMNIROUTE_URL 与 OMNIROUTE_KEY,具体设置参见入口 SKILL 文档。
获取可用模型:
curl $OMNIROUTE_URL/v1/models/web | jq '.data[] | select(.kind == "webFetch")'
抓取示例:
curl -X POST $OMNIROUTE_URL/v1/web/fetch \
-H "Authorization: Bearer $OMNIROUTE_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "jina/reader",
"url": "https://anthropic.com",
"format": "markdown"
}'
请求端点为 POST $OMNIROUTE_URL/v1/web/fetch。参数包括:
- model:字符串,取自
/v1/models/web的提供方标识,如 jina/reader、firecrawl/scrape。 - url:字符串,要抓取的地址,必须为 http/https。
- format:字符串,可选 markdown(默认)、html、text。
错误处理
- 400 invalid_url:URL 必须为 http/https。
- 403 blocked:提供方被目标站点屏蔽,可尝试其他模型。
- 503:提供方不可用,可换用
/v1/models/web中的其他模型。
适用场景
需要将网页正文作为干净文本导入工作流、知识库或模型上下文的场景,例如读取文章、文档页面并保留标题与链接信息。
限制
资料未提供抓取结果大小上限、超时、速率限制、收费与计费方式、支持的站点范围等细节,暂未提供;具体可用提供方取决于 OmniRoute 服务端配置。