随着 SaaS 服务的流行,越来越多的人选择在各个平台线上编写文档,制作表格并进行分享。
同时,随着 Markdown 语法的破圈,很多平台开始集成支持这种简洁的书写标记语言,这样可以保证平台上用户文档样式的统一性。
但是在一些场景下,我们还是会在本地的 Office 软件上写有很多文档,或者历史遗留了很多本地文档。
如果我们需要将其上传到各大平台,直接复制粘贴,大概率是会造成文档内容结构和样式的丢失。于此我们需要将其转换为 Markdown 语法。
很多桌面软件(比如 Typora)都提供了导入 Word 文件的功能,这类功能一般是通过 Pandoc 这个软件来扩展实现的。
Pandoc 是一个全能型的文档格式转换工具,其能够将多种文档格式转换为各类常见的文档格式。具体的文档格式之间的转换如下图所示(来源于官网):
Pandoc 是瑞士军刀一般的存在,能够较好的处理各类的文档格式转换,但是如果我们需要自己写程序,调用 Pandoc 则需要额外的安装 Pandoc 才行,并且也不方便自定义。
幸而,在 Python 中有很多第三方模块提供了此类文档格式的转换功能。今天,我们来实现一下比较频繁使用到的 Word 文档转 Markdown 文档。
转换逻辑
Word 文档到 Markdown 文档的转换总体而言分两步来实现:
第一步,将 Word 文档转换为 HTML 文档;
第二步,将 HTML 文档转换为 Markdown 文档;
依赖模块
要实现这个功能我们需