欢迎光临
我们一直在努力

python怎么实现批量md转word

这篇文章主要介绍“python怎么实现批量md转word”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python怎么实现批量md转word”文章能帮助大家解决问题。

前言;

最近想要实现批量将mardown文档转化为word。网上有很多解决的方法,但是自己保存的md文档在不同的文件夹,而大部分只能实现同一文件夹内的转换,因此稍加改进,得出以下功能。

from glob import glob
from pathlib import Path
import os

dirs = [ d for d in glob("./**/")]

# 用在本文件夹内则调整为下列代码
# dirs = [ d for d in glob("./")]

# 提取所有的md文档路径
al1_file_pathes=[]
for dir in dirs:
    file_list=Path(dir).glob("*.md")
    for file in file_list:
        al1_file_pathes.append(".\\"+str(file))
        print(file)

        
# 批量转化所有的md文档为docx
for md_path in al1_file_pathes:
    doc_path=md_path.replace(".md",".docx")
    command_new="pandoc -s "+md_path+" -o "+doc_path 
    print(command_new)
    try:
        res=os.popen(command_new).readlines()
        if len(res)==0:
            print(md_path,"已经转化为",doc_path_2)
    except Exception as e:
        print(e)

若要将转化的word文档集中到python程序所在文件夹内。

代码如下:

from glob import glob
from pathlib import Path
import os

dirs = [d for d in glob("./**/")]

# 用在本文件夹内则调整为下列代码
# dirs = [ d for d in glob("./")]

# 提取所有的md文档路径
for dir in dirs:
    file_list = Path(dir).glob("*.md")
    for file in file_list:
        md_path = ".\\" + str(file)
        doc_path_1 = os.path.split(file)[1].replace(".md", ".docx")
        command_new_1 = "pandoc -s "+md_path+" -o "+doc_path_1
        try:
            res=os.popen(command_new_1).readlines()
            if len(res)==0:
                print(md_path,"已经转化为",doc_path_1)
        except Exception as e:
            print(e)

关于“python怎么实现批量md转word”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注云搜网行业资讯频道,小编每天都会为大家更新不同的知识点。

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。