使用 Microsoft markitdown 将 PDF、Word、PowerPoint、Excel、图片、音频、HTML 等多种格式转换为 Markdown,支持 OCR、音频等功能。
MarkItDown:1.Microsoft的轻量级 Python 工具,用于将各种文件转换为Markdown,与LLMS和相关文本分析管道使用.是一项面向实际任务的技能,主要用于Prerequists.;Python 3.10QJava 11+(对于一些共通公司)。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
Microsoft 推出的轻量级 Python 工具,用于将多种格式的文件转换为 Markdown,以供大语言模型(LLM)及相关文本分析流水线使用。
pipx install 'markitdown[all]'
pip install 'markitdown[all]'
pip install 'markitdown[pdf,docx,pptx]'
| 格式 | 扩展名 | 说明 |
|---|---|---|
| 保留文档结构、表格与超链接 | ||
| Word | .docx | 支持标题、列表、表格等元素 |
| PowerPoint | .pptx | 将幻灯片转为 Markdown |
| Excel | .xlsx, .xls | 提取表格数据 |
| 图像 | .png, .jpg 等 | 读取 EXIF 元数据 + OCR 文字识别 |
| 音频 | .wav, .mp3 | 语音转录 |
| HTML | .html, .htm | 网页内容提取 |
| YouTube | URL | 视频内容转录 |
| ZIP | .zip | 递归遍历压缩包内所有文件 |
| EPub | .epub | 电子书格式支持 |
| 文本类格式 | .csv, .json, .xml | 纯文本结构化格式 |
# PDF 转 Markdown markitdown document.pdf > output.md # Word 转 Markdown markitdown document.docx -o output.md # PowerPoint 转 Markdown markitdown presentation.pptx -o output.md
cat document.pdf | markitdown
markitdown screenshot.png -o text.md
markitdown "https://youtube.com/watch?v=..." -o transcript.md
from markitdown import MarkItDown
# 初始化
md = MarkItDown()
# 转换文件
result = md.convert("document.pdf")
print(result.text_content)
# 从流中转换
with open("document.pdf", "rb") as f:
result = md.convert_stream(f)
print(result.text_content)
| 选项 | 说明 | 示例 |
|---|---|---|
-o, --output |
输出文件路径 | -o output.md |
--format |
输出格式(默认为 markdown) | --format json |
--pages |
指定处理页码范围 | --pages "1,3,5-7" |
--image-output |
图像处理方式 | --image-output external |
--quiet |
静默模式(抑制控制台输出) | --quiet |
MarkItDown 提供 MCP(Model Context Protocol)服务器,便于与 LLM 应用集成:
pip install markitdown-mcp
请安装 Java 11 或更高版本:
# macOS brew install openjdk@17 # Ubuntu sudo apt install openjdk-17-jdk
建议使用 pipx 或虚拟环境安装:
python3 -m venv ~/.venvs/markitdown source ~/.venvs/markitdown/bin/activate pip install 'markitdown[all]'