当前位置: 首页 > news >正文

word2markdown:一款优秀的Word转Markdown工具

1. 概述

word2markdown是一款优秀的 Word 转 Markdown 工具。随着人工智能技术的普及,将 Word 文档转换为 Markdown 格式供 AI 分析已成为常见需求。然而,现有工具(如 pandoc 等)在转换效果上往往不尽如人意。

为此,作者开发了这款基于 Python 的 Word 转 Markdown 工具,它能够智能识别 Word 文档中的各种格式元素(标题、加粗、列表、代码块、表格、图片、超链接等),并准确转换为对应的 Markdown 语法。经过实际测试,本工具在转换准确性和格式保持方面表现优异。

项目网址:word2markdown

如果觉得不错记得给项目标个星哦!

2. 运行环境

  • python 3.11
  • python_docx==0.8.11

3. 参考资料

  • python-docx官方文档
  • Python顺序读取word文档中的文本与表格
  • kmrambo/Python-docx-Reading-paragraphs-tables-and-images-in-document-order-
  • Python使用标准库zipfile+re提取docx文档中超链接文本和链接地址
  • Python如何提取docx中的超链接
  • 第105天:Python操作Word
  • python-docx处理word文档
  • 使用python-docx在MSWord中添加超链接
  • python-docx设置表格填充底色以及切分单元格(仅使用python-docx)

4. 转换原理

  • 根据 Word 标题判断是否为标题
  • 根据 Word 文字是否加粗进行加粗
  • 根据 Word “项目符号/编号” 判断是否为列表
  • 根据 Word 文字是否倾斜判断是否为行代码
  • 根据 Word 1x1 的表格判断是否为块代码
  • Word 中非 1x1 的表格判定为普通表格,可以转换为 Markdown 表格
  • 可以处理 Word 文档中的图片
  • 可以处理 Word 文档中的超链接
  • 只能处理 docx 文档,不能处理 doc 文档

5. Word 文档格式要求

  • 行代码用倾斜字体表示
  • 块代码必须放在 1x1 的表格中
  • 1x1 的表格判定为块代码,其它大小的表格判定为普通表格
  • 图片必须是单独的段落
  • “项目符号/编号” 必须用样式集中的 “List Paragraph” 标识,否则会识别为正文文本

6. 使用工具

test_file/input/linux-manual.docx是一篇用于测试的 Word 文档。

test_file/output/linux-manual.md是转换后预期得到的 Markdown 文档。

test_file/output/linux-manual.imgs是转换后从 Word 中提取的图片的存放路径。

pip 安装依赖:

python3.11 -m pipinstall-r requirements.txt

运行转换命令,测试转换效果:

python3.11 main.py test_file/input/linux-manual.docx

转换生成的 Markdown 文档和图片会存放在test_file/input/目录下。

使用你转换生成的 Markdown 文档和预期得到的 Markdown 文档对比,二者除了图片链接外,内容应该是一样的。

因为转换工具每次从 Word 中提取图片时,会动态生成 UUID 作为图片名字,因此每次运行得到的图片名字是不一样的。

http://www.jsqmd.com/news/111381/

相关文章:

  • Mistral 3 模型解析与部署实战:从 Large 3 到 Mini-stral
  • 10 个降AI率工具,本科生高效避坑指南
  • Kubernetes 实操命令大全
  • 研究生必备:8款免费AI论文工具,一键生成文献综述,真实引用无忧! - 麟书学长
  • bootchart数据量化工具使用
  • SG-TCP232-620(六通道串口服务器)特点与功能介绍
  • Linux 实操命令大全
  • [服务器应用开发教程]第二节-使用java让服务器忙起来
  • 【C++】学生管理系统设计与实现丨SQLite数据库版本
  • 【LangChain4J】流式输出(底层和高级api两种模式)
  • P1525 [NOIP 2010 提高组] 关押罪犯
  • 51单片机温度报警器:从C程序到Proteus仿真全记录
  • 集之互动AI创意视频解决方案:商业级可控,让品牌创意从“灵感”直达“落地”
  • 深入解析:【号码分离】从Excel表格、文本、word文档混乱文字中提取分离11位手机号出来,基于WPF的实现方案
  • Android开机性能分析工具bootchart详细使用
  • Test-2025
  • 9个高效降AI率工具,本科生必看!
  • 10个高效降AI率工具,自考学生必备!
  • 【2025实测】12款主流降ai率工具大汇总,论文降aigc一篇搞定(含免费降ai率工具) - 晨晨_分享AI
  • CentOS 7.9 在 VMware 17.5.0 上的完整安装教程
  • 计算机专业自学指南:从大一到大四,步步为营!从零基础到精通,收藏这篇就够了!
  • 从零开始的云原生之旅(十八):部署热更新——无需重启服务的幕后
  • 非专业也能看懂的AI大模型工作原理!(非常详细)从零基础到精通,一篇就够了!
  • 空间转录组上游(Space Ranger)
  • 详细揭秘如何使用 对哦 原理
  • vulkan中的SSBO
  • 非期望超效率SBM模型:Matlab实现与探讨
  • 告别频繁校准,效率成本双拿捏!这款MEMS寻北仪刷新行业新体验
  • AI元人文构想:从价值对齐到意义生成的哲学范式革命
  • Java设计模式系列 - 基本概念