你有没有遇到过这种情况?
手里一堆PDF报告、Word文档、PPT幻灯片,想丢给AI帮你总结分析,结果AI根本读不懂这些格式。你只能手动复制粘贴,排版全乱,表格变成一坨,图片直接消失。
折腾半天,人比AI还累。
现在,微软开源了一个工具,专门解决这个痛点。
它叫 MarkItDown,一个轻量级的Python工具,能把你电脑里几乎所有常见文件格式,一键转换成Markdown。
GitHub上已经飙到了 10.4万颗星,6400+ Fork。

说真的,能在GitHub上拿到10万星的项目,全世界也没几个。这个项目发布没多久就火成这样,说明它确实戳中了大家的刚需。
它到底能干嘛?
简单来说,MarkItDown就干一件事,把各种文件转成Markdown格式的纯文本。
你可能会问,为什么是Markdown?
因为现在主流的大语言模型,不管是GPT-4o、Claude还是DeepSeek,它们天生就「说」Markdown。训练数据里有海量的Markdown文本,所以它们对这种格式的理解最好、最准确。而且Markdown格式极其省token,同样的内容,转成Markdown喂给AI,比直接丢原始文件省钱省时间。
目前MarkItDown支持转换的格式包括:
📄 文档类:PDF、Word(.docx)、PowerPoint(.pptx)、Excel(.xlsx/.xls)
🌐 网页类:HTML
🖼️ 图片类:支持EXIF元数据提取 + OCR文字识别
🎵 音频类:支持元数据提取 + 语音转文字
📺 视频类:YouTube链接直接提取字幕
📚 其他:CSV、JSON、XML、EPub电子书、ZIP压缩包(自动遍历里面的文件)
你没看错,连YouTube链接都能直接转。你丢一个YouTube视频地址给它,它自动帮你把字幕抓下来转成Markdown。
这也太方便了。
保姆级安装教程
别慌,跟着一步一步来,五分钟搞定。
第一步:确认Python环境
MarkItDown需要 Python 3.10或更高版本。
打开你的终端(Windows用户按 Win+R,输入 cmd 回车;Mac用户打开「终端」app),输入:
python --version如果显示的版本号是3.10以上,比如 Python 3.12.0,那就没问题,直接下一步。
如果你电脑还没装Python,或者版本太低,去 Python官网(python.org)下载最新版安装。安装的时候 一定要勾选「Add Python to PATH」,这个很重要,不勾的话后面会找不到命令。
第二步:创建虚拟环境(推荐)
虚拟环境的作用是把MarkItDown的依赖和你电脑上其他Python项目隔离开,避免互相冲突。
方法一:用Python自带的venv
# 在你想放项目的目录下执行python -m venv markitdown-env激活虚拟环境:
# Windows用户markitdown-env\Scripts\activate# Mac/Linux用户source markitdown-env/bin/activate激活成功后,你的终端前面会出现 (markitdown-env) 的标识。
方法二:用Anaconda(如果你装了的话)
conda create -n markitdown python=3.12conda activate markitdown两种方法选一种就行,效果一样。
第三步:安装MarkItDown
这一步最简单,一行命令:
pip install 'markitdown[all]'[all] 的意思是安装所有格式的支持。如果你只想转特定格式的文件,也可以按需安装,比如:
# 只安装PDF、Word、PPT的支持pip install 'markitdown[pdf,docx,pptx]'目前可选的依赖包括:
[all] | |
[pdf] | |
[docx] | |
[pptx] | |
[xlsx] | |
[xls] | |
[outlook] | |
[audio-transcription] | |
[youtube-transcription] |
安装过程可能需要一两分钟,取决于你的网速。看到 Successfully installed 就说明装好了。
第四步:验证安装
输入以下命令,看看是否安装成功:
markitdown --help如果输出了使用帮助信息,恭喜你,安装完成了!
怎么用?三种姿势
姿势一:命令行(最简单)
适合快速转换单个文件,一行命令搞定:
# 转换PDF并输出到终端markitdown 你的文件.pdf# 转换并保存到文件markitdown 你的文件.pdf -o 输出结果.md# 也可以用重定向markitdown 你的文件.pdf > 输出结果.md甚至可以用管道:
cat 你的文件.pdf | markitdown实战举例:
假设你桌面上有一份产品需求文档 PRD.docx,想转成Markdown:
markitdown PRD.docx -o PRD.md就这么简单。打开生成的 PRD.md,标题、列表、表格、链接全都完整保留。
姿势二:Python代码调用
如果你想在自己的Python脚本里批量处理,可以用Python API:
from markitdown import MarkItDownmd = MarkItDown()# 转换单个文件result = md.convert("报告.pdf")print(result.text_content)# 保存到文件with open("报告.md", "w", encoding="utf-8") as f: f.write(result.text_content)想批量转换一个文件夹里所有的PDF?加几行代码就行:
import osfrom markitdown import MarkItDownmd = MarkItDown()for filename in os.listdir("./文档文件夹"): if filename.endswith(".pdf"): result = md.convert(f"./文档文件夹/{filename}") output_name = filename.replace(".pdf", ".md") with open(f"./输出/{output_name}", "w", encoding="utf-8") as f: f.write(result.text_content) print(f"已转换: {filename}")姿势三:搭配AI大模型使用(进阶玩法)
这才是MarkItDown最骚的地方。
如果你的文件里有图片,MarkItDown可以调用大模型来识别图片内容并生成描述:
from markitdown import MarkItDownfrom openai import OpenAIclient = OpenAI()md = MarkItDown(llm_client=client, llm_model="gpt-4o")result = md.convert("含有图片的PPT.pptx")print(result.text_content)这样转出来的Markdown里,图片的位置会自动填上AI生成的图片描述文字,信息一点不丢。
还有个彩蛋:MCP服务器
MarkItDown现在还提供了MCP(Model Context Protocol)服务器,可以直接跟Claude Desktop这类LLM应用对接。
装上之后,你在Claude对话框里直接发文件,它就能自动用MarkItDown来解析,不需要你手动转换了。
安装也很简单:
pip install markitdown-mcp对于经常用AI助手处理文档的人来说,这个功能真的太实用了。
几个实用小技巧
1. 转换YouTube视频
pip install 'markitdown[youtube-transcription]'markitdown "https://www.youtube.com/watch?v=你的视频ID"直接把视频字幕提取成Markdown,做内容整理、写笔记特别好使。
2. 用Docker运行(不想装Python的同学看这里)
docker build -t markitdown:latest .docker run --rm -i markitdown:latest < 你的文件.pdf > output.md3. 安装OCR插件
如果你的PDF是扫描版的(图片PDF),需要装OCR插件来识别文字:
pip install markitdown-ocrpip install openai然后在代码里启用插件:
from markitdown import MarkItDownfrom openai import OpenAImd = MarkItDown( enable_plugins=True, llm_client=OpenAI(), llm_model="gpt-4o",)result = md.convert("扫描版文档.pdf")写在最后
坦率的讲,MarkItDown解决的问题看起来很小,就是文件格式转换嘛。但在AI时代,这个「小问题」其实卡住了无数人。
你有一堆文档想让AI帮你分析,但AI读不了那些格式。你手动复制粘贴,排版全乱了,表格没了,图片不见了。MarkItDown就是那个帮你打通「文件」和「AI」之间最后一公里的桥梁。
微软把它开源出来,MIT许可证,免费用,随便改。10万颗星不是白给的,这是真正的社区投票。
如果你经常跟各种文档打交道,又想用AI来提效,强烈建议收藏这篇文章,找个时间花五分钟装上试试。
你会发现,一行命令能省你几个小时。
项目地址: https://github.com/microsoft/markitdown
以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~
谢谢你看我的文章,我们,下次再见。
夜雨聆风