批量将markdown文件转化为docx

本文介绍了如何使用Pandoc这款强大的文本转换工具,配合Python的pypandoc库,将Markdown格式的内容转换为微信公众号可识别的Docx格式,以便在不支持Markdown的平台上发布文章。
摘要由CSDN通过智能技术生成

背景

markdown是开发者手中的利器,很多的开发平台都支持markdown编辑,但是凡事有例外微信公众号平台就不支持markdown编写并且只能导入docx的文档。但是我们在cdsn中写好文章之后导出的是markdown, 在微信公众号平台上还有要重新写一遍。

pandoc介绍

Pandoc是一款功能强大的文本转换工具,它能够将多种标记和文字处理格式进行转换,包括但不限于Markdown、HTML、LaTeX和Word docx等。这款软件不仅支持广泛的格式转换,还提供了高度定制化的功能,以满足用户的不同需求。

Pandoc的核心优势在于其模块化设计,它由一组读取器组成,能够解析给定格式的文本并产生文档的本地方法表示(抽象语法树或AST)。同时,它还拥有一组写入器,负责将这个本地方法表示转换成目标格式。这种设计使得Pandoc在添加新的输入或输出格式时非常灵活,只需添加相应的读取器或写入器即可。

此外,Pandoc还支持使用过滤器来处理文档,用户可以运行自定义的Pandoc过滤器来修改中间的AST,进一步丰富了文档的处理方式。无论是添加脚注、修改样式,还是进行其他复杂的文档操作,Pandoc都能轻松应对。

Pandoc还具备跨平台特性,可以在Windows、MacOS和Linux等操作系统上运行,这使得用户无论使用何种设备,都能轻松利用Pandoc进行文本转换工作。同时,作为一款命令行工具,Pandoc易于集成进自动化工作流,为开发者提供了极大的便利。

总的来说,Pandoc是一款功能全面、操作简便、高度定制化的文本转换工具。

python中使用pandoc

pandoc下载地址
在这里插入图片描述

安装完成之后在命令行中输入pandoc 检查是否安装成功
在这里插入图片描述

python安装pypandoc

pip install pypandoc

python代码

import os
import pypandoc


md_file_dir = r"D:\data\导出数据"
docx_file_dir =r"D:\temp\导出docx"
os.makedirs(docx_file_dir, exist_ok=True)

for root, _, files in os.walk(md_file_dir):
    for filename in files:
        if filename.endswith(".md"):
            try:
                print(filename)
                md_file = os.path.join(root, filename)
                docx_file = os.path.join(docx_file_dir, filename.replace("md", "docx"))
                pypandoc.convert_file(md_file, 'docx', format='md',
                                      outputfile=docx_file)
                print(f"Converted '{md_file}' to '{docx_file}'")  # 打印转换状态
            except Exception as e:
                print(f"Converted error:{e}" )

请添加图片描述

如图所示转化成docx成功
请添加图片描述

导入微信公众号也是能识别的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平时不搬砖

创造不易,请动动你发财的小手

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值