Html2md

Polar Sponsor
爱发电 赞助
.NET 9.0

使用 Readability + Turndown 将 HTML 页面转换为干净的、Agent 友好的 Markdown。去除导航栏、广告、页脚、Cookie 横幅、社交按钮等干扰元素。支持 URL...

html2md.

功能概述

html2md.是一项面向实际任务的技能,主要用于AI代理的反向HTML- 标记下转换器.;Mozilla可读性将主内容隔离,转弯转换为标记下,然后重处理后条条会残留噪音.;

核心要点

  • Full fl.。
  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。

使用与执行

该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;

结果检查与注意事项

若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

html2md

面向 AI 代理的激进式 HTML 到 Markdown 转换器。采用 Mozilla Readability 提取主内容,Turndown 转换为 Markdown,再经重度后处理清除残留噪声。

完整参数说明与高级用法示例详见:references/usage.md

安装

cd /scripts
npm install
npm link        # 使 `html2md` 全局可用

需 Node.js 22 或更高版本。

快速上手

html2md https://example.com                    # 抓取并转换
html2md --file page.html                       # 转换本地 HTML 文件
cat page.html | html2md --stdin                # 从 stdin 管道输入
html2md --max-tokens 2000 https://example.com  # 按 token 预算截断
html2md --no-links https://example.com         # 移除 href 属性,保留链接文本
html2md --json https://example.com             # JSON 输出:{title, url, markdown, tokens}

核心特性

  • Readability 内容提取 — 自动移除导航栏、侧边栏、广告、Cookie 提示横幅等干扰元素;当 Readability 提取结果过少(例如 Hacker News 的表格布局)时,自动回退至清理后的 内容。
  • Token 预算控制 — 使用 --max-tokens N 参数可确保所有标题均被保留,并按文档顺序填充剩余预算,末尾追加 [truncated — N more tokens] 标记。估算依据为:1 token ≈ 4 字符。
  • 后处理能力 — 清除 HTML 注释、零宽字符、社交类行动号召(CTA)、面包屑导航、空标题,并合并多余空白行。
  • 错误处理机制 — 对无效 URL、超时(默认 15 秒)、非 HTML 响应内容、缺失文件等异常情况,统一返回退出码 1,并在 stderr 输出明确的错误描述。
  • 多种输出模式 — 支持纯 Markdown 输出,或启用 --json 模式以供程序化调用。

何时选用 html2md,而非 web_fetch

选用 html2md 的场景 选用 web_fetch 的场景
在定时任务(cron jobs)或子代理中读取网页 在主会话中执行一次性快速抓取
Token 预算敏感(使用 --max-tokens) 目标页面为 JSON/XML API 接口
网页含大量导航栏、广告、页脚等需清理内容 无需 JavaScript 渲染
需要结构化 JSON 输出 页面结构简单

安全注意事项

html2md 的职责即为获取 URL 内容及读取本地文件。若传入不可信输入,请注意:

  • URL 抓取:该工具将无条件请求所给 URL。若您的威胁模型包含 SSRF(服务器端请求伪造),请勿在未经校验的情况下直接使用用户可控的 URL。
  • 文件读取:--file 可读取进程有权限访问的任意路径。在代理工作流中,路径由代理自身控制——其风险等级等同于代理直接调用 cat 命令。
  • 不执行 shell 命令:工具本身绝不会派生 shell 进程或执行任意命令。若在脚本中调用,请使用 execFileSync(而非 execSync)以规避 shell 注入风险。
  • 无数据外泄行为:所有输出仅发送至 stdout;除单次目标 URL 抓取外,不发起任何其他网络请求;不采集遥测数据、不收集分析信息、不进行任何形式的“回传”(phone-home)。
  • 依赖项:jsdom(Mozilla 实现的 DOM 库)、Readability(Mozilla 内容提取器)、Turndown(HTML→Markdown 转换器)。上述均为经过广泛审计的开源库。

使用示例

# 在 2000 token 预算内读取 Paul Graham 的一篇随笔
html2md --max-tokens 2000 https://paulgraham.com/greatwork.html

# 获取 Hacker News 首页的干净文本,去除链接干扰
html2md --no-links --no-images https://news.ycombinator.com

# 在提交前获取 token 数量统计
html2md --json https://example.com | jq .tokens

# 将输出重定向至文件
html2md https://docs.example.com/api > api-docs.md

相关专题

更多
html termux代码合集
html termux代码合集

本专题整合了html termux相关教程,阅读专题下面的文章了解更多详细内容。

2026.04.02

499

11

HTML提醒设置合集
HTML提醒设置合集

本专题整合了HTML提醒设置相关教程,阅读专题下面的文章了解更详细的操作步骤。

2026.03.27

840

22

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

2026.01.13

158

10

html空格代码怎么写
html空格代码怎么写

在网页制作中,HTML空格代码是实现文本排版的常用技巧。本合集详解多种空格写法:如 (不换行空格)、 (半角空格)、 (全角空格)等实体编码,及CSS控制空白的white-space属性。覆盖基础用法、场景差异与注意事项,助新手快速掌握不同空格效果的实现逻辑,轻松解决排版对齐难题,提升页面美观度与可读性。

2025.11.27

409

16

css怎么嵌入到html
css怎么嵌入到html

本合集聚焦“CSS嵌入HTML”核心技巧,为新手提供清晰指引。教程从基础讲起,详解行内样式(style属性)、内部样式表(<style>标签)与外部样式表(link引入)三种主流嵌入方式,对比其适用场景与优缺点。通过实例演示代码编写与效果呈现,助你快速掌握不同场景下的选择逻辑。内容简洁直观,零基础也能轻松上手,高效实现网页样式控制,开启前端美化第一步。

2025.11.27

288

8

html 中文乱码
html 中文乱码

本专题整合了html显示中文乱码相关教程,阅读专题下面的文章了解更多详细内容。

2025.11.17

303

11

html网页制作步骤
html网页制作步骤

本专题整合了制作html网页教程,阅读专题下面的文章了解更多详细内容。

2025.11.16

710

10

HTML代码实现弹窗的方法
HTML代码实现弹窗的方法

HTML弹窗通过HTML、CSS和JavaScript实现,核心是创建默认隐藏的浮层元素并由交互触发显示。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.10.20

307

9

HTML视频实现快速快进快退的方法
HTML视频实现快速快进快退的方法

通过JavaScript操作video元素的currentTime属性实现视频快进快退。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.10.20

1315

8

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
GDB 17.2 官方文档集合
GDB 17.2 官方文档集合

共0课时 | 0人学习

Bootstrap 入门安装配置
Bootstrap 入门安装配置

共0课时 | 0人学习

38+ PhpStorm 提示和技巧
38+ PhpStorm 提示和技巧

共1课时 | 224人学习