make-to-markdown 智能转换器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_741dc82b/make-to-markdown。
技能介绍
要解决的具体问题
在技术文档处理中,经常需要将多种格式的文件(如 .docx、.xlsx、.pdf)转换为 Markdown 格式,以便进行版本控制、协作或分析。然而,手动转换面临诸多挑战:不同格式依赖不同的库,转换过程容易失败或产生乱码;旧格式如 .doc 可能需要额外环境;批量转换时错误处理繁琐;输出质量参差不齐,可能包含水印、页码等无关内容。make-to-markdown 旨在自动化解决这些问题,提供可靠的转换方案。
如何工作:核心能力与关键步骤
make-to-markdown 的核心是 scripts/convert.py,它集成了一整套智能转换流程:
- 依赖管理:自动检测文档格式,安装缺失的 Python 模块,如
python-docx、openpyxl,并在 120 秒超时内完成。 - 多格式转换:优先使用
markitdown工具进行转换;如果失败,则自动降级到原生转换器,例如对于.docx使用python-docx,对于.xlsx使用openpyxl。 - 预处理与清洗:对于旧格式
.doc或.ppt,自动尝试转换为现代格式;转换后执行内联后置清洗,去除水印、页码,修复标题层级,补全表格。 - 渐进式执行:支持批量转换,采用 Init-Step-Poll 协议,避免卡死:Init 阶段确认任务,Step 阶段逐个处理,Poll 阶段汇总进度。
- 验证检查:转换完成后执行 V1-V6 检查,确保输出文件存在、非空、UTF-8 编码、无残留水印、标题层级正常、表格完整。
整个流程无需人工干预,但严格遵守安全约束,如源文件零修改和禁止外部 API 泄露。
注意点与适用边界
使用 make-to-markdown 时,需注意以下关键点:
- 核心红线:转换过程只读,所有中间产物写入临时目录;输出文件已存在时必须确认覆盖;检测到加密文档立即终止;旧格式且环境缺失时暂停提示。
- 反模式禁令:禁止直接调用
markitdown或原生库,必须通过convert.py;禁止在批量转换中不指定格式过滤;避免循环清洗。 - 适用场景:适用于常见的文档格式转换,尤其是需要高质量 Markdown 输出的场景;对于极端复杂或损坏的文件,可能需手动干预。
- 平台兼容:支持 Windows、Linux、macOS,路径处理使用
pathlib.Path自动适配。
使用场景
- 技术团队需要将历史 `.doc` 规格书批量转换为 Markdown,以便集成到 Git 仓库进行版本控制,并保持内容清晰可读。
- 数据分析师从多个 `.xlsx` 表格中提取数据,通过转换生成结构化的 Markdown 表格,用于撰写分析报告并嵌入协作平台。
- 内容运营人员需要将一批带水印和页码的 `.pdf` 产品手册转为干净的 Markdown 文本,以便在博客和帮助文档中重新发布。
- 开发者收到客户提供的旧版 `.ppt` 演示文稿,需将其内容转换为 Markdown 格式,方便提取关键信息并更新到项目文档库。
适合人员
- 技术文档工程师:需要将分散的 Word、PDF 等格式文档统一转换为 Markdown,以构建和维护内部知识库。
- 数据分析师:经常需要从 Excel 表格中提取数据并转换为 Markdown 格式,用于生成可视化报告或共享给非技术人员。
- 内容编辑:负责将历史档案中的旧格式文档(如 .doc)批量转换为现代 Markdown 格式,以便在线发布和协作编辑。
- 软件开发人员:需要将客户或合作伙伴提供的演示文稿、文档等转换为 Markdown,以便集成到项目管理或开发流程中。