Turndown:将 HTML 无缝转换为 Markdown 的利器
你是否曾经需要将网页内容、富文本编辑器生成的 HTML 或复杂的文档片段转换为清晰、简洁的 Markdown 格式?手动转换不仅繁琐,还容易出错。Turndown 的出现,旨在彻底解决这个问题。它是一个用 JavaScript 编写的轻量级 HTML 到 Markdown 转换器,可以帮助开发者轻松地将 HTML 内容转换为易于编辑、版本控制和发布的 Markdown 文本。本文将带你全面了解这个在内容处理领域广受欢迎的工具。
截至收录:
Turndown项目stars数:10655
Turndown项目forks数:957
Turndown项目目录截图

Turndown项目核心亮点
- 🔄 转换精准可靠:基于完善的规则系统,能够智能处理标题、列表、代码块、链接等多种 HTML 元素,生成符合 CommonMark 规范的 Markdown。
- ⚙️ 高度可定制:提供丰富的配置选项(如标题样式、列表标记、代码块风格等)和强大的插件系统,允许开发者根据具体需求调整转换行为。
- 🔧 易于扩展:通过清晰的
addRule、keep、remove和useAPI,开发者可以轻松添加自定义转换规则、保留特定 HTML 标签或集成社区插件(如 GFM – GitHub Flavored Markdown)。 - 🌐 多环境运行:完美支持 Node.js 和浏览器环境,可以通过 npm 安装或直接通过 CDN 引入,满足前后端各种使用场景。
Turndown项目快速开始
只需几步,你就能在项目中使用 Turndown:
1. 安装:
# 使用 npm 安装
$ npm install turndown
或在浏览器中直接引入:
<script src="https://unpkg.com/turndown/dist/turndown.js"></script>
运行你的第一个转换:
// 在 Node.js 或支持 ES Modules 的环境中使用
import TurndownService from turndown ;
// 或使用 CommonJS: const TurndownService = require( turndown );const turndownService = new TurndownService();
const html =
Hello World!
This is a paragraph.
;
const markdown = turndownService.turndown(html);
console.log(markdown);
// 输出:
// # Hello World!
//
// This is a paragraph.
尝试高级功能:
// 使用插件(例如 GitHub Flavored Markdown 的表格支持)
const { gfm } = require( turndown-plugin-gfm );
turndownService.use(gfm);// 添加自定义规则
turndownService.addRule( myRule , {
filter: [ custom-tag ],
replacement: (content) => **${content}**
});
Turndown项目应用场景
- 内容迁移与整合:将旧版网站或 CMS 系统中的 HTML 文章批量迁移到支持 Markdown 的静态博客(如 Hugo、Jekyll)或知识库系统中。
- 富文本编辑器输出处理:对接富文本编辑器(如 TinyMCE、CKEditor),将其生成的 HTML 内容转换为 Markdown 进行存储或进一步处理,使内容更轻量、更易管理。
- 网页内容抓取与格式化:在爬虫或自动化脚本中,抓取网页正文后,使用 Turndown 将其转换为干净的 Markdown,便于生成摘要、报告或导入笔记软件。
- 文档工具链:作为文档生成工具链的一部分,将 API 文档、设计稿注释等来源的 HTML 片段统一转换为 Markdown,保证文档风格一致。
Turndown项目链接
mixmark-io / turndown项目地址:https://github.com/mixmark-io/turndown
本文地址:https://www.tgoos.com/38203
声明:本站资源均整理自互联网,版权归原作者所有,仅供学习交流使用,请勿直接商用,若需商用请购买正版授权。因违规使用产生的版权及法律责任由使用者自负。部分资源可能包含水印或引流信息,请自行甄别。若链接失效可联系站长尝试补链。若侵犯您的权益,请邮件(将 # 替换为 @)至 feedback#tgoos.com,我们将及时处理删除。转载请保留原文链接,感谢支持原创。
