十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

MarkItDown:一条命令把 PDF、Word 等 10 余种格式转成 Markdown 的完整入门指南

MarkItDown:一条命令把 PDF、Word 等 10 余种格式转成 Markdown 的完整入门指南 MarkItDown一条命令把 PDF、Word 等 10 余种格式转成 Markdown 的完整入门指南【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdownMarkItDown 是微软 AutoGen 团队出品的 Python 文档转换工具能把 PDF、Word、Excel、PPT、图片、音频、网页等 10 余种格式转成结构化 Markdown保留标题、列表、表格和链接。如果你需要把办公文档喂给 LLM、做全文检索或文本分析读完本文你可以用 3 步装好并跑通转换并清楚哪些格式需要额外安装哪些依赖。快速上手3 步跑通第一次文档转换准备 Python 3.10 及以上环境建一个虚拟环境安装并执行转换pip install markitdown[all] markitdown report.pdf -o report.md打开report.md检查产出。预期结果得到带 Markdown 语法的正文标题、表格、列表都保留了原有结构。 提示文件也可以走标准输入例如cat report.pdf | markitdown想用容器可用仓库自带的 Dockerfile 构建镜像后执行docker run --rm -i markitdown:latest report.pdf out.md。想从源码安装则克隆仓库https://gitcode.com/GitHub_Trending/ma/markitdown 后执行pip install -e packages/markitdown[all]。能转换什么12 类格式与对应依赖格式转换内容安装方式PDF文本与表格markitdown[pdf]Word.docx标题、列表、表格markitdown[docx]Excel.xlsx/.xls工作表转 Markdown 表格markitdown[xlsx]/[xls]PowerPoint.pptx幻灯片文字markitdown[pptx]Outlook 邮件.msg邮件正文markitdown[outlook]图片EXIF 元数据可接 LLM 描述内置音频EXIF 元数据wav/mp3 语音转写markitdown[audio-transcription]HTML / RSS / 网页结构化正文内置CSV / JSON / XML文本格式直接转写内置EPUB书籍正文内置ZIP逐个遍历包内文件内置YouTube 链接抓取视频转写markitdown[youtube-transcription]Office 三件套结构保留是重点Word、Excel、PPT 是日常最高频的输入。转换时标题层级、项目符号列表、表格边框内容都会映射为对应 Markdown 语法Excel 的每个工作表都会单独输出。调用方式就是上面那条markitdown命令或在 Python 里md.convert(report.xlsx)。注意MarkItDown 的产出面向文本分析和 LLM 消费排版可读性通常够用但不要拿它替代面向人类阅读的高保真排版转换。图片、音频等非文本格式图片默认输出 EXIF 元数据如果你传入llm_client和llm_model目前作用于图片和 PPTX 中的图片它会改由大模型生成图片描述。音频支持 wav/mp3 的语音转写需要安装[audio-transcription]依赖。ZIP 则会被逐个解包转换适合处理批量压缩包。可扩展插件与云端增强插件默认关闭。用markitdown --list-plugins查看已装插件加-p参数启用。官方markitdown-ocr插件用 LLM Vision 对 PDF、DOCX、PPTX、XLSX 中嵌入图片里的文字做 OCR复用同一套llm_client/llm_model配置。云端方面-d可接 Azure Document Intelligence--use-cu可接 Azure Content Understanding后者能抽取结构化字段输出为 YAML front matter并覆盖视频场景。 提示OCR 插件若没有传入llm_client会静默跳过 OCR 并回退到内置转换器不会报错排查时先确认这个配置。实战演示两个高频用法场景一论文 PDF 批量转 Markdown 入库背景你有一批论文 PDF要放进检索或问答管线。确认装了[pdf]依赖执行markitdown paper.pdf -o paper.md检查产出中的标题层级与表格。预期结果摘要、章节标题、正文段落都成为规范的 Markdown可直接交给下游工具批量处理。图这类论文首页经转换后标题、作者列表与正文段落结构都会保留在 Markdown 中。场景二让 LLM 替图片写描述背景PPT 或截图里的关键信息是图像纯文本提取拿不到。安装 OpenAI 客户端或任意兼容客户端用下面方式初始化并转换图片from markitdown import MarkItDown from openai import OpenAI md MarkItDown(llm_clientOpenAI(), llm_modelgpt-4o) print(md.convert(test_llm.jpg).text_content)查看打印结果。预期结果输出不再是 EXIF 数据而是 LLM 生成的图片内容描述图片里的文字与图形语义进入了文本管线。图仓库自带的 LLM 描述测试图图中的文字指令与几何图形都会被模型读进输出。避坑调优3 个常见现象的解法现象装了 markitdown 却转换 PDF 报缺依赖。原因基础包不含全部格式的可选依赖。解法按格式安装 extras如pip install markitdown[pdf, docx, pptx]。现象从标准输入读取时提示无法识别格式。原因没有文件名可供推断格式。解法用-x pdf或-m application/pdf给出扩展名/MIME 提示。现象服务端部署时担心读到任意文件或 URI。原因convert()会处理本地文件、远程 URI 和字节流且以当前进程权限做 I/O。解法⚠️ 先做输入清洗并改调最窄的接口只读本地文件用convert_local()自控网络请求用convert_response()纯流式用convert_stream()。横向对比MarkItDown、Pandoc 与 textract 怎么选维度MarkItDownPandoctextract定位文件转 Markdown面向 LLM 与文本分析通用文档转换输出格式多文本提取主要产出纯文本媒体处理图片元数据/LLM 描述、音频转写、OCR 插件非重点非重点调用方式Python API CLI Docker 插件以 CLI 为主Python 库结构保留标题、列表、表格、链接保留文档结构基础文本结论把文档交给 LLM 或检索系统选 MarkItDown需要在多种出版格式间互相转换选 Pandoc只想快速提取纯文本textract 足够。资源索引官方文档仓库根目录README.md含全部 CLI 参数与云端服务配置说明核心源码packages/markitdown/src/markitdown/各格式转换器位于其converters/子目录OCR 插件packages/markitdown-ocr/插件开发示例packages/markitdown-sample-plugin/社区项目 Issues 页面可反馈问题第三方插件可在代码托管平台搜索#markitdown-plugin标签MarkItDown 的边界很清楚离线转换免费且快但输出服务于文本分析而非高保真排版视频文件则必须走 Azure Content Understanding 云端路线。建议从pip install markitdown[all]加一条markitdown命令起步按实际处理的格式再收敛依赖够用且不臃肿。【免费下载链接】markitdownPython tool for converting files and office documents to Markdown.项目地址: https://gitcode.com/GitHub_Trending/ma/markitdown创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表