ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Plannotator 注解任意网页与 HTML 文件:从 URL 抓取到结构化反馈的完整指南

Plannotator 注解任意网页与 HTML 文件:从 URL 抓取到结构化反馈的完整指南 【免费下载链接】plannotatorAnnotate and review coding agent plans and code diffs visually, share with your team, send feedback to agents with one click.项目地址https://gitcode.com/gh_mirrors/pl/plannotator点击查看免费下载Plannotator 是面向 AI 编码 Agent 的开源可视化评审界面。本文讲解/plannotator-annotate命令新增的 URL 与 HTML 文件支持拉取任意外部文档、直接渲染本地 HTML并在标注完成后把结构化反馈回传给 Agent 会话。读完本文你将掌握远程 URL 与本地 HTML 的注解流程、Jina Reader 的抓取与降级机制、以及 CLI 标志 / 环境变量 / 配置文件三层的 Jina 行为配置方式。要解决的问题当 Agent 需要按外部 API 文档或特定指南实现功能时常见的做法是复制粘贴文档到聊天窗口丢失结构或凭记忆自由描述需求不够精确。真正需要的是一条完整链路打开页面 → 高亮相关段落 → 把标注后的内容直接发给 Agent。这是一个社区请求的功能随 PR #545 落地现在已完全可用。现在你可以做什么/plannotator-annotate底层对应plannotator annotate现在与 markdown 一样接受 URL 和 HTML 文件plannotator annotate https://docs.stripe.com/api # 远程 URL plannotator annotate docs/guide.html # 本地 HTML 文件 plannotator annotate ./docs/ # 文件夹现在包含 .html 文件 plannotator annotate docs/guide.html --markdown # 将本地 HTML 转为 markdown plannotator annotate https://... --no-jina # 直接抓取不走 Jina抓取行为的关键差异URL 默认先转成 markdown再进入注解编辑器本地 HTML 默认按 HTML 渲染需要旧版 Turndown 转换路径时可加--markdown标注、高亮、评论完成后点击Send Annotations结构化反馈即回传给 Agent 会话文件夹模式的文件浏览器现在会把.html与.htm文件同 markdown 一起展示文档标题下方会出现来源徽章source attribution badge标明内容来源。从源码结构看注解目标的分辨逻辑由 packages/shared/annotate-target.ts 实现其用法提示明确给出了目标形态file.md | file.txt | file.html | https://... | folder/即一个注解目标可以是文件、URL 或文件夹三种形态之一。URL 抓取如何工作抓取管线位于 packages/shared/url-to-markdown.ts函数urlToMarkdown根据目标形态返回四种来源之一source 取值含义fetch-raw目标本身就是 markdown原样返回content-negotiation服务器原生返回 markdown跳过转换jina经 Jina Readerr.jina.ai转换fetchturndown直接抓取 HTML 后用 Turndown 本地转换各条路径的优先级如下.md/.mdxURL 直接抓取URL 以.md或.mdx结尾时先尝试原样抓取文本若服务器返回的是 HTML例如 GitHub 的 markdown 渲染页则自动降级走 Jina 或 Turndown内容协商快速通道请求头带Accept: text/markdown探测站点若支持 Cloudflare Markdown for Agents 一类能力则直接返回 markdown5 秒超时属于尽力而为的优化Jina Reader默认拼装https://r.jina.ai/url抓取能处理 JavaScript 渲染的页面、剥离导航与样板内容返回干净的阅读模式 markdown绝大多数文档站效果良好。若 Jina 失败会向 stderr 输出警告并自动降级到直接抓取Turndown 本地转换直接抓取 HTML经htmlToMarkdownTurndown GFM 表格支持转换。底层防护细节从 packages/shared/url-to-markdown.ts 的实现可以看到几个面向生产环境的约束30 秒抓取超时FETCH_TIMEOUT_MS 30_000超时抛错而非挂起10MB 响应体上限MAX_BODY_BYTES响应过大直接中断并报错最多 10 次重定向且每一步手动跟随redirect: manual并校验目标本地/私网 URL 自动跳过 JinaisLocalUrl覆盖localhost、127.x、10.x、192.168.x、169.254、IPv6 链路本地/唯一本地地址等Jina 无法触达私网这类 URL 一律直接抓取SSRF 防护重定向若落到私网/本机地址会直接阻断避免外部页面把请求引导到内网。对应行为在 packages/shared/url-to-markdown.test.ts 中有完整测试覆盖包括内容协商命中、Jina 降级、本地 URL 跳过协商、服务器 5xx 容错以及.mdURL 优先级等场景。何时使用--no-jina对以下场景可以跳过第三方服务直接抓取需要登录鉴权的页面内网文档本地/私网 URL 本来就会自动走直接抓取出于隐私考虑不想路由到第三方服务。--no-jina下 Plannotator 直接抓取页面并用 Turndown 本地转换。在命令行参数解析层该标志由 packages/shared/annotate-args.ts 的FLAG_MAP识别--no-jina→noJina且在 packages/shared/annotate-args.test.ts 中验证了无论标志出现在 URL 前还是后都会被剥离并生效。配置 Jina 行为的三种方式关闭 Jina Reader 有三种方式按优先级从高到低优先级方式示例1CLI 标志plannotator annotate https://... --no-jina2环境变量PLANNOTATOR_JINA0或false3配置文件~/.plannotator/config.json中{ jina: false }若三者都未设置Jina 默认开启。优先级逻辑在 packages/shared/config.ts 的resolveUseJina中实现--no-jina CLI 标志 → PLANNOTATOR_JINA 环境变量 → config.jina → 默认 true配置文件的布尔值解析很宽容coerceConfigBoolean除接受真正的布尔值外还接受字符串形式的true/false/1/0手写 JSON 时把false误写成带引号的字符串也能正确识别。提高速率限制JINA_API_KEY未配置时20 RPM每分钟 20 次请求配置JINA_API_KEY后500 RPMJina 提供免费 API key包含10M tokens。在 packages/shared/url-to-markdown.ts 的fetchViaJina中可以看到设置了JINA_API_KEY后请求头会带上Authorization: Bearer key。相关环境变量同样记录在 apps/marketing/src/content/docs/reference/environment-variables.md 的 Annotation variables 一节。注解 HTML 文件与来源徽章本地.html/.htm文件默认从磁盘读取并按 HTML 渲染加--markdown则先转为 markdown 再进入编辑器。转换使用 Turndown 并支持 GFM 表格转换前会剥离script、style、noscript标签。HTML 文件必须位于当前工作目录内项目根目录之外的文件会返回 403。注解 HTML 文件或 URL 时纯 markdown 除外文档标题下方会出现来源徽章URL显示主机名如stripe.comHTML 文件显示文件名如guide.html。更完整的命令说明与标志矩阵--gate、--json、--hook、--app、--static见 apps/marketing/src/content/docs/commands/annotate.md。注解模式下的差异注解模式的编辑器与 plan review 基本一致仅有几处变化Approve 按钮默认隐藏多数场景无可审批项传--gate可启用为评审决策Send Feedback 变为Send AnnotationsCmd/CtrlEnter发送标注而非审批完成页显示 Annotations Sent 而非 Plan Approved。所有标注类型删除、评论、全局评论、快捷标签、looks good 审批、图片附件行为一致HTML 与 live app 表面例外仅支持评论不可用删除与快捷标签。上手体验安装或升级 Plannotatorcurl -fsSL https://plannotator.ai/install.sh | bash然后对任意 URL 或 HTML 文件运行 annotate 命令标注相关段落并发送反馈给 Agent。无论你是在 Claude Code、OpenCode、Pi 等宿主中通过/plannotator-annotate斜杠命令使用还是直接在终端跑plannotator annotate这套 URL / HTML 抓取与标注管线都保持一致Agent 收到的是结构化、可逐条执行的反馈。赞分享【免费下载链接】plannotatorAnnotate and review coding agent plans and code diffs visually, share with your team, send feedback to agents with one click.项目地址https://gitcode.com/gh_mirrors/pl/plannotator点击查看免费下载相关推荐plannotator OpenCode 插件 /plannotator-annotate 命令解析:从 Markdown 存根到注释反馈闭环plannotator OpenCode 插件 /plannotator annotate 命令解析:从 Markdown 存根到注释反馈闭环 本篇以 planFirecrawl智能抓取工具终极指南从网页到结构化数据的完整解决方案Firecrawl智能抓取工具终极指南从网页到结构化数据的完整解决方案 还在为手动收集网页数据而头疼吗想要一键将复杂网站转换为可用的结构化信息Firecr网页爬虫后端AI 应用Python 网页抓取实战指南用 lxml 与 Requests 从 HTML 中提取结构化数据python-guide 场景指南Python 网页抓取实战指南用 lxml 与 Requests 从 HTML 中提取结构化数据python guide 场景指南 本篇技术指南改编自 T文档教程上一篇FP16精度模型在ViT-B-32__openai中的应用性能与精度的完美平衡下一篇掌握Iced文本框输入表单处理与数据验证完整指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表