处理过 PDF、Word、Excel 转 Markdown 的人都知道,市面上各种转换工具要么收费、要么精度差、要么批量处理要写一堆胶水代码。微软开源的这个 MarkItDown 就是来解决这个问题的——一个轻量级 Python 工具,能把主流办公文档和多媒体文件一键转成 Markdown,专为 LLM 和文本分析管线设计。
MarkItDown 由微软 AutoGen 团队维护,GitHub 上已收获 170,000+ Star,是当前最热门的文档转 Markdown 工具之一。它的设计思路很清晰:把从 PDF、PowerPoint、Word、Excel 到图片、音频、HTML、YouTube 链接甚至 EPUB 电子书等十余种格式统一转化为 Markdown,让 LLM 或其他文本分析工具可以直接消费。
安装就一行命令:
pip install 'markitdown[all]'
使用也极其简单,命令行下直接跑:
markitdown 文档.pdf -o 输出.md
或者通过 Python API 调用:
from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("报告.xlsx")
print(result.text_content)
核心功能覆盖:
- PDF — 文本提取 + 布局分析
- Office 套件 — Word (.docx)、PowerPoint (.pptx)、Excel (.xlsx/.xls)、Outlook 邮件
- 多媒体 — 图片 EXIF 元数据 + OCR,音频转录
- 网页 — HTML 解析 + YouTube 链接自动获取字幕
- 电子书 — EPUB 格式支持
- 压缩包 — ZIP 自动遍历内部文件
对于需要更高精度的场景,MarkItDown 还集成了 Azure Document Intelligence 和 Azure Content Understanding 的云端分析能力,可以在本地基础转换之外调用云 OCR 和结构化字段提取。同时还支持插件机制,社区已贡献了 OCR 增强插件(markitdown-ocr),用 LLM Vision 提取图片中的文字。
它的亮点在于格式保真——不是简单地剥掉标签转纯文本,而是尽力保留 Markdown 语义结构(标题层级、列表、表格、链接等),让 LLM 能准确理解文档原本的层级关系。
|
Stars | 170,066 |
|
语言 | Python |
|
许可 | MIT |
|
安装 | pip install markitdown |
GitHub
PyPI
