MarkItDown 开源工具:10 秒把 PDF 转成 Markdown 的完整教程
MarkItDown 开源工具:10 秒把 PDF 转成 Markdown 的完整教程
【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown
MarkItDown 是微软开源的一款文件格式转换工具,专门做 Markdown 转换:把 PDF、Word、Excel、网页甚至音频统统变成纯 Markdown 文本。手上一堆 PDF 想喂给大模型?批量转换工具它也算一个,一次搞定。
支持哪些文件格式?
📌 先把"它到底能转哪些格式"讲清楚,分四组:
- 办公文档:PDF、DOCX、PPTX、XLSX(含老式 XLS)、EPUB、Outlook MSG、ZIP 压缩包
- 网页来源:HTML 页面、RSS 订阅、YouTube 视频(取字幕)、Wikipedia 页面、搜索结果页
- 多媒体:JPG/PNG 等图片(输出描述信息),MP3/WAV/M4A 等音频(转写文字)
- 数据文件:CSV、JSON、XML、Jupyter Notebook(.ipynb)
每种格式对应一个独立转换器,想加新格式不用改主包,装插件即可,扩展代码都放在 converters/ 目录里。
5 分钟装好 MarkItDown
准备 Python 3.10 以上环境和 pip,一条命令装完全部可选依赖;只想支持某几种格式的话,把[all]换成[pdf]、[docx]之类的 extras 就行。装好后顺手验证一下版本:
pip install 'markitdown[all]' markitdown --version一条命令完成转换
拿到文件,直接喂给它:
markitdown 报告.pdf -o 报告.md不带-o的话,结果直接打印到终端,想存盘也可以用>重定向,效果一样。
进阶:批量与自定义
📌 两个用得上的技巧:
管道输入:文件没有扩展名、或者内容来自管道时,用-x提示格式,MarkItDown 照样认得出:
cat 未知文件 | markitdown -x pdf批量转换:命令行一次吃一个文件,批量就靠 shell 串起来,一条命令转完一整个文件夹:
for f in *.pdf; do markitdown "$f" -o "out/${f%.pdf}.md"; done另外--list-plugins可以查看已装插件,-d能接入云端文档智能服务做更精细的版面识别;不想折腾的话,本地转换已经够用。
源码目录速览
packages/markitdown/src/markitdown/ 核心包 packages/markitdown/src/markitdown/converters/ 各格式转换器 packages/markitdown/tests/ 测试用例新手上手建议
- 第一次跑,拿最简单的 DOCX 试,5 秒钟就能看懂输出长什么样,比直接怼复杂 PDF 心里有底
- 敲
markitdown --help翻一遍参数,比翻文档快,藏着不少实用开关 - 扫描件和截图记得配合 OCR 插件,纯文本提取对"图片里的字"是无能为力的
- 双栏排版的 PDF 转出来难免有顺序问题,后处理一下再入库,别指望一次完美
写在最后
把攒了半年的合同 PDF 批量转成 Markdown 归档,或者把一堆网页丢进去做 RAG 语料库,都是 MarkItDown 最常见的活儿。装一个试试,两分钟的事。
【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
