用途
fetch-url-md 用于抓取网页内容,并在目标网站同时提供 HTML 与 Markdown 版本时优先获取 Markdown 版本。其目标是让抓取到的文档内容更简洁、结构化,减少 HTML 标记带来的噪声。
主要能力
- 优先检测并抓取网页的 Markdown 版本。
- 当 Markdown 版本不存在时,回退到原始 URL。
- 使用 curl 完成检测与抓取,不依赖其他工具。
使用方式
技能按顺序执行以下步骤:
- 解析原始 URL
从用户提供的 URL 中提取基础 URL 与路径,并构造 Markdown 地址(在原始 URL 后追加 .md)。
示例:
- 输入:https://ui.shadcn.com/docs/components/radix/aspect-ratio
- Markdown URL:https://ui.shadcn.com/docs/components/radix/aspect-ratio.md
- 检测 .md 版本是否存在
使用 curl 的 HEAD 请求检测 .md 版本:
curl -sI "https://ui.shadcn.com/docs/components/radix/aspect-ratio.md" | head -n 1
判断规则:
- 200 OK:Markdown 版本存在,抓取它。
- 404 Not Found:Markdown 版本不存在,使用原始 URL。
- 3xx 重定向:跟随重定向或使用原始 URL。
- 抓取内容
如果 .md 存在:
curl -s "https://ui.shadcn.com/docs/components/radix/aspect-ratio.md"
如果 .md 不存在(回退):
curl -s "https://ui.shadcn.com/docs/components/radix/aspect-ratio"
决策流程
用户提供 URL → 构造 .md URL(追加 .md)→ curl -sI <markdown-url> | head -n 1 → 若 200 OK 则抓取 .md,若 404/其他则抓取原始 HTML URL。
快速参考
检测命令: curl -sI "<url>.md" | head -n 1
抓取命令: curl -s "<url>.md"
回退检测命令: curl -sI "<url>" | head -n 1
回退抓取命令: curl -s "<url>"
适用场景
适合 Claude 需要从同时提供 HTML 与 Markdown 的网站(例如文档站点)检索文档的场景,例如 shadcn/ui 的组件文档页面。
限制
资料中未提供关于依赖环境、超时处理、认证、请求头配置、错误重试、并发或平台兼容性等方面的说明,暂未提供相关信息。