你有没有遇到过这种情况——
收到一份50页的PDF合同,要整理成笔记;导出一份Excel数据,想转成可编辑的文字;打开一个Word文档,发现格式乱成一团……
手动复制粘贴,不仅累,还容易出错。
现在,微软出手了。
一个工具,搞定所有文档格式
这个神器叫 MarkItDown,来自微软 AutoGen 团队,开源没几天就在 GitHub 斩获了 5万多 Star,火爆程度可见一斑。
它的核心功能就一个:把各种常见文件格式,一键转成干净的 Markdown。
支持的格式包括:
| 格式 | 说明 |
|---|---|
| 论文、合同、报告 | |
| 📝 Word | .docx 文件 |
| 📊 Excel | 表格自动转 Markdown 表格 |
| 📽️ PowerPoint | 提取文本内容 |
| 🌐 HTML | 网页/邮件 |
| 📧 EML | 邮件文件 |
| 🖼️ 图片 | 可配合 LLM 识别图片文字 |
| 🎵 音频 | 语音转文字 |
| 📦 ZIP | 批量处理压缩包 |
转换后统一变成 Markdown,结构完整、格式干净,直接就能用。
为什么是 Markdown?
你可能会问:转成纯文本不行吗?为什么非要 Markdown?
因为 Markdown 不只是纯文本。
它保留了原文档的层级结构——标题还是标题,列表还是列表,表格还是表格,LLM 读得懂,后面的工具也接得住。
这才是它真正有价值的地方:文档进了 AI 工作流,结构不丢失,分析更准确。
再加上 Markdown 几乎被所有主流笔记工具支持——Obsidian、Notion、飞书文档——转完就能直接归档到你的知识库里。
有意思的是,Obsidian CEO 也亲自推荐过 MarkItDown,说它是"本地文本文件"工作流的完美拼图。
怎么用?3秒钟上手
MarkItDown 是命令行工具,但真的一点都不复杂。
第一步,安装(一条命令):
pip install markitdown[pdf,docx,pptx]
第二步,转换(一条命令):
markitdown 你的文件.pdf > 输出.md
Done。就是这么简单。
也可以指定输出路径:
markitdown 你的文件.pdf -o 输出.md
或者管道传参:
cat 你的文件.pdf | markitdown
三种方式,随你选。
进阶玩法:接 AI,图片也能读
MarkItDown 还能配合大模型使用——比如处理图片时,让 AI 自动生成图片描述。
from markitdown import MarkItDown
client = # 你的 LLM 客户端
md = MarkItDown(llm_client=client, llm_model="gpt-4o")
result = md.convert("含有图片的文档.docx")
print(result.text_content)
图片里的文字、图表说明,AI 帮你一并提取出来。
此外,它还支持插件系统,开发者可以自行扩展功能,满足特殊需求。
实际体验:表现如何?
有用户测试了一份 50多页的 PDF,转换后结构完整度令人满意——标题层级、段落、表格都保留了。
不过也有需要注意的地方:
复杂 Excel(尤其是合并单元格)转换后可能需要微调 多列排版的 Word 文档,效果会打折扣 图片不会自动嵌入 Markdown 文件,需要后续处理
对于日常最常见的文档转换需求,它已经能覆盖 80% 的场景,而且完全免费、开源。
适用人群
如果你符合以下任意一条,MarkItDown 值得试试:
📓 知识管理爱好者,用 Obsidian/飞书等笔记工具 🤖 经常用 AI 处理文档(LLM 喂料神器) 📄 需要频繁在 PDF、Word、Excel 之间来回折腾 🔧 有开发能力,想定制文档处理流程
工具链接
GitHub: github.com/microsoft/markitdown安装: pip install markitdown[pdf,docx,pptx]
总结一下:
微软开源的 MarkItDown,解决的不是什么高深问题——就是每个人每天都会遇到的"文档格式转换"烦恼。但它用一种极简的方式做到了,而且免费、开源、效果够用。
一个命令行,把 PDF、Word、Excel、PPT、网页、邮件全部转成干净的 Markdown。
打工人和 AI 党同时直呼:太香了。
夜雨聆风