Python将md批量转为docx

简介: 这两天写毕业论文, 发现了一个可以将markdown快速转为word格式的小工具pandoc, 非常好用, 比如我有一个名为毕业论文.md的文件, 我只需在命令行运行pandoc 毕业论文.

这两天写毕业论文, 发现了一个可以将markdown快速转为word格式的小工具pandoc, 非常好用, 比如我有一个名为毕业论文.md的文件, 我只需在命令行运行

pandoc 毕业论文.md -o 毕业论文.docx

即可根据md文件生成新的docx文件!

pandoc支持相互转换的格式, 多的惊人!
pandoc

Pandoc主站链接

安装包下载地址

https://github.com/jgm/pandoc/releases/tag/2.2

使用技巧:

  • 由于word确实很难用, 我们可以用md格式书写, 然后转换成docx
  • 懒是第一生产力, pandoc可以在命令行运行, 所以, 我们可以配合python脚本将md格式批量转换为docx
  • 这是我写的一个简易脚本
import os  

def auto_md_to_docx(file_dir):
    # 获取当前目录下所有的md文件的路径信息
    all_whole_path_files = []
    for root, dirs, files in os.walk(file_dir):
        for file in files:
            try:
                if file[-3:] == ".md":
                    file_info = [root+'/', file]
                    all_whole_path_files.append(file_info)
            except Exception as e:
                print(e)
    print("==>", all_whole_path_files)

    # 将md依次转换为pandoc
    for file_info in all_whole_path_files:
        md_file_path_file = file_info[0] + file_info[1]
        docx_file_name = file_info[1][:-3] + '.docx'
        docx_file_path_file = file_info[0] + docx_file_name
        new_command = 'pandoc ' + md_file_path_file + ' -o ' + docx_file_path_file

        try:
            result = os.popen(new_command).readlines()
            if len(result) == 0:
                print(md_file_path_file, "已经转换为", docx_file_path_file)
        except Exception as e:
            print(e)

def main():
    auto_md_to_docx('.')

if __name__ == '__main__':
    main()


运行效果

最终结果

windows用户安装pandoc

1.下载32位免安装版软件包

下载地址: https://github.com/jgm/pandoc/releases/tag/2.2.1

2.将软件包放入c盘, 并解压

3.获取pandoc.exe的绝对路径

4. 将pandoc.exe的绝对路径放入环境变量

  • 值得一提的是, 我这里用的md测试文件, 都是从我的简书后台打包下载的, 也就是本地是不存在图片的, 而pandoc会自动帮我们把图片下载到本地, 然后保存到新生成的doc中.
  • 只要将我的脚本稍加修改, 就可以按照上面的网状图, 进行任意两种格式的互转(比如word转pdf), 有兴趣的小伙伴可以自己动手折腾一下

另外, 小白福利, 我把这篇博客做成了视频 https://www.bilibili.com/video/av24136955/
欢迎观看, 欢迎投币, 欢迎弹幕, 欢迎转发,,,

目录
相关文章
|
存储 项目管理 Python
数据导入与预处理-第4章-数据获取python读取docx文档(上)
数据导入与预处理-第4章-pandas数据获取docx文档 1.python读取docx文档概述 1.1 从Word文件获取数据 1.2 python-docx库介绍 1. Paragraph类 2. Table类
数据导入与预处理-第4章-数据获取python读取docx文档(上)
|
2月前
|
Python
在Python中.面向对象编程和其他编程范式的区别docx
在Python中.面向对象编程和其他编程范式的区别docx
15 3
|
2月前
|
Python
Python-函数的传参方式docx
Python-函数的传参方式docx
18 5
|
2月前
|
Python
Python.-判断语句docx
Python.-判断语句docx
10 1
|
2月前
|
Python
Python-标识符docx
Python-标识符docx
10 1
|
5月前
|
PHP Python
基于Python中docx与docxcompose批量合并多个Word文档文件并逐一添加分页符
基于Python中docx与docxcompose批量合并多个Word文档文件并逐一添加分页符
|
算法 数据处理 Python
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
在处理多个相同格式的文件时,python中的许多模块可以为我们提供很多遍历。 比如,我们想读取一个文件夹下多个相同格式的文件时 可以使用os模块,
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
|
11月前
|
Python
Python应用 | 读写docx文件 (值得收藏的技能)
Python应用 | 读写docx文件 (值得收藏的技能)
104 0
|
存储 SQL 关系型数据库
Python玩转阿里云OSS对象存储,批量转存markdown和html图片
Python玩转阿里云OSS对象存储,批量转存markdown和html图片
|
文字识别 Python
7行python代码实现核算检测批量复查
7行python代码实现核算检测批量复查
78 0
7行python代码实现核算检测批量复查