Skip to main content

markitdown-converter

Convert documents (PDF, Word, Excel, PPT, images, audio) to Markdown using Microsoft MarkItDown. Full workflow: format detection, conversion, OCR, LLM image description, batch processing. Use when user mentions document conversion, PDF to markdown, Word to markdown, OCR, 文档转换, PDF转Markdown, Word转换, 文件格式转换.

Informações da origem

Repositório
zunyiqingfeng-code/skills
Última atividade na origem
21 de agosto de 2026 às 14:34
Idioma detectado do SKILL.md
chinês
Estrelas
2
Forks
0

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
11 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
markitdown-converter
description
Convert documents (PDF, Word, Excel, PPT, images, audio) to Markdown using Microsoft MarkItDown. Full workflow: format detection, conversion, OCR, LLM image description, batch processing. Use when user mentions document conversion, PDF to markdown, Word to markdown, OCR, 文档转换, PDF转Markdown, Word转换, 文件格式转换.
trigger-keywords
["markdown转换工具","文件转markdown工具","markitdown","文档转换","文件转换","PDF转markdown","Word转markdown","Excel转markdown","PPT转markdown","图片转markdown","音频转markdown","批量转换","OCR识别","文档格式转换","文件格式转换","文本提取"]
# MarkItDown转换技能 基于Microsoft MarkItDown的文档转换系统,为OpenCode提供强大的文档处理能力。 ## 核心功能 1. **多格式支持**:PDF、Word (.docx)、Excel (.xlsx)、PowerPoint (.pptx)、图片、音频、HTML、文本等格式 2. **高质量转换**:保留文档结构、表格、列表、链接等Markdown元素 3. **高级功能集成**: - **OCR图像文字识别**:提取图片和PDF中的文字 - **Azure Document Intelligence**:云端文档分析服务 - **LLM图像描述**:使用GPT-4o等模型描述图片内容 - **音频转录**:提取音频文件中的文字 - **插件系统**:支持第三方插件扩展 4. **批量处理**:支持文件夹批量转换和ZIP文件处理 5. **配置灵活**:支持命令行参数和Python API两种使用方式 ## 技术特性 - 基于Microsoft官方MarkItDown项目 (https://github.com/microsoft/markitdown) - 轻量级Python工具,专注于保留文档结构 - 输出为高质量的Markdown格式,适合LLM处理 - 完善的错误处理和进度提示 - 支持本地文件和网络URL ## 自动检测规则 当以下情况出现时自动触发文档转换: 1. **文件路径检测**:消息中包含`.pdf`、`.docx`、`.xlsx`、`.pptx`、`.jpg`、`.png`等扩展名 2. **转换关键词**:用户明确请求文档转换、格式转换、Markdown转换 3. **上下文感知**:在讨论文档处理、文本提取相关内容时自动提供转换服务 ## 使用方法 ### 基本文件转换 ```python # 导入技能脚本 import sys sys.path.insert(0, "SKILL_DIR/scripts") from markitdown_wrapper import convert_file # 单文件转换 result = convert_file("document.pdf", output_path="document.md") # 批量转换 from markitdown_wrapper import batch_convert batch_convert("input_folder/", "output_folder/") ``` ### 命令行使用 ```bash # 单文件转换 python scripts/markitdown_wrapper.py convert document.pdf -o document.md # 批量转换文件夹 python scripts/markitdown_wrapper.py batch input_folder/ output_folder/ # 使用高级选项 python scripts/markitdown_wrapper.py convert document.pdf --use-ocr --llm-model gpt-4o ``` ### 高级功能 ```python from markitdown_wrapper import MarkItDownWrapper # 创建转换器实例 wrapper = MarkItDownWrapper( enable_plugins=True, # 启用插件系统 use_ocr=True, # 启用OCR llm_model="gpt-4o", # LLM图像描述模型 docintel_endpoint="https://..." # Azure Document Intelligence ) # 转换文件 result = wrapper.convert("document_with_images.pdf", output_path="output.md") ``` ## 支持的文件格式 | 格式 | 扩展名 | 特性 | |------|--------|------| | PDF | .pdf | 文字提取、OCR图像识别 | | Word文档 | .docx | 保留样式、表格、列表 | | Excel表格 | .xlsx, .xls | 表格数据转换 | | PowerPoint | .pptx | 幻灯片内容提取 | | 图片文件 | .jpg, .png, .gif, .bmp | OCR文字识别、LLM图像描述 | | 音频文件 | .mp3, .wav | 语音转文字 | | HTML网页 | .html | 网页内容提取 | | 文本文件 | .txt, .csv, .json, .xml | 直接转换 | | ZIP压缩包 | .zip | 批量处理内部文件 | | YouTube视频 | URL | 字幕提取 | ## 配置说明 ### 基本依赖安装 ```bash pip install 'markitdown[all]' ``` ### 可选依赖(按需安装) ```bash # 仅安装基本功能 pip install markitdown # 按格式安装 pip install 'markitdown[pdf]' # PDF支持 pip install 'markitdown[docx]' # Word支持 pip install 'markitdown[pptx]' # PowerPoint支持 pip install 'markitdown[xlsx]' # Excel支持 pip install 'markitdown[ocr]' # OCR支持 pip install 'markitdown[audio]' # 音频转录 ``` ### 插件安装 ```bash # 安装OCR插件 pip install markitdown-ocr # 启用插件 from markitdown import MarkItDown md = MarkItDown(enable_plugins=True) ``` ## 示例输出 ``` [MarkItDown转换结果] (耗时3.2秒 | 文件: document.pdf) ------------------------------------------------------------ # 示例文档标题 这是一个示例PDF文档转换为Markdown的展示。 ## 第一章 介绍 MarkItDown能够很好地保留文档的结构: 1. 列表项一 2. 列表项二 3. 列表项三 ### 表格示例 | 列1 | 列2 | 列3 | |-----|-----|-----| | 数据1 | 数据2 | 数据3 | | 数据4 | 数据5 | 数据6 | **重要提示**:转换结果保持了原始文档的层级结构和格式元素。 ------------------------------------------------------------ ``` ## 高级功能详解 ### OCR图像文字识别 ```python from markitdown_wrapper import convert_with_ocr # 使用OCR转换图片或PDF result = convert_with_ocr( "scanned_document.pdf", llm_client=OpenAI(), llm_model="gpt-4o" ) ``` ### Azure Document Intelligence ```python # 使用Azure云端服务 result = convert_with_azure( "document.pdf", endpoint="https://your-endpoint.cognitiveservices.azure.com/", api_key="your-api-key" ) ``` ### 批量处理 ```python from markitdown_wrapper import BatchProcessor processor = BatchProcessor( input_dir="documents/", output_dir="markdown/", recursive=True, # 递归处理子文件夹 file_patterns=["*.pdf", "*.docx"] # 指定文件类型 ) processor.process() # 开始批量转换 ``` ## 错误处理 系统会优雅处理各种错误情况: - 文件不存在或无法访问 - 不支持的格式 - 转换过程中断 - 依赖缺失 - API调用失败 所有错误都会提供友好的中文提示和解决方案建议。 ## 性能优化 1. **缓存系统**:相同文件的转换结果可选择性缓存 2. **批量处理**:支持文件夹批量转换,减少重复操作 3. **并发支持**:批量处理时可选择并行转换 4. **进度显示**:显示转换进度和预估时间 ## 集成提示 本技能设计为与OpenCode无缝集成: - 自动检测对话中的文档转换需求 - 与现有工具和技能协同工作 - 保持OpenCode的对话风格和用户体验 - 提供有价值的文档处理能力增强 ## 注意事项 - **文件大小**:大文件转换可能需要较长时间 - **OCR精度**:图像文字识别精度取决于图片质量 - **格式兼容**:某些复杂格式可能无法完美转换 - **依赖管理**:建议使用虚拟环境管理依赖
Ver no GitHub