【Python】Word批量转成PDF

方法:先用python小代码把word统一为.docx文件,然后使用docx2pdf库直接在控制台转换,一行代码就实现了。

目录

1 Word转PDF

1.1 Word的.doc文件转换为.docx文件

1.2 Word的.docx文件转换为PDF 


1 Word转PDF

        由于我们的word有些可能是.doc后缀或者是.docx后缀的,所以首先要在转化前同意为.docx后缀的。


1.1 Word的.doc文件转换为.docx文件

首先下使用下面的命令行下载pywin32库:

pip install pywin32

如果不行的话就试一试pypiwin32这个库:

pip install pypiwin32

安装好了之后打开可以使用的python编辑软件,使用下面代码先把.doc的文件转为.docx文件:

Tip:最好是先把.doc文件挑出来放在一个文件夹里面,然后对这个文件夹操作

"""
修改文档格式.doc转为.docx,并保存在子目录docx下
"""
import pythoncom
import os
import win32com.client as wc


# 从最后开始替换某字符串几次
def rreplace(s, old, new, occurrence):
    li = s.rsplit(old, occurrence)
    return new.join(li)


# 读取文件夹下的doc文件名列表
def doc_file_name(file_dir):
    fileList = []
    for root, dirs, files in os.walk(file_dir):
        for file in files:
            if os.path.splitext(file)[1] == '.doc':
                fileList.append(os.path.join(root, file))
                # 若.doc文档所在目录不存在docx子目录则自动创建
                docx_dir = root + '\\docx'
                if not os.path.exists(docx_dir):
                    os.makedirs(docx_dir)
    return fileList


# doc文件另存为docx
def doc_to_docx(doc_name):
    pythoncom.CoInitialize()
    try:
        word = wc.Dispatch("Word.Application")
        doc = word.Documents.Open(doc_name, Encoding='utf-8')
        # 上面的地方只能使用完整绝对地址,相对地址找不到文件,且,只能用“\\”,不能用“/”,哪怕加了 r 也不行,涉及到将反斜杠看成转义字符。
        doc_name = rreplace(doc_name, "\\", "\\docx\\", 1)
        doc.SaveAs(doc_name.replace(".doc", ".docx"), 12, False, "", True, "", False, False, False, False)
        # 转换后的文件,12代表转换后为docx文件
        doc.Close
    except Exception as e:
        print(e.message)
    finally:
        # 对com操作,一定要确保退出word应用
        if word:
            word.Quit
            del word
        # 释放资源
        pythoncom.CoUninitialize()


def main():
    #地址是.doc文件所在的文件夹地址,这里111是我桌面一个111的文件夹名称
    file_list = doc_file_name("C:/Users/柴宝/Desktop/111")
    print(len(file_list))
    for file in file_list:
        doc_to_docx(file)


if __name__ == '__main__':
    main()

1.2 Word的.docx文件转换为PDF 

        首先需要使用下面的代码安装docx2pdf库(因为这个库可以不用写代码实现,但是缺点就是只能对.docx文件操作,所以才要上面的转化):

pip install docx2pdf

安装好了之后直接使用放大镜搜索cmd进入命令提示符界面输入:

docx2pdf C:\Users\柴宝\Desktop\111\ C:\Users\柴宝\Desktop\111\

第一个位置docx2pdf:这是固定输入的

第二个位置的地址:这是.docx文件所在的文件夹地址

第三个位置的地址:这是想要把pdf保存到哪里 

(中间使用空格隔开)

命令提示符就是控制台,就是下面这种界面输入上面那串代码: 

然后就是enter键之后等待processing了。 

        接下来就是点开文件夹看成功了没有,成功了然后就大功告成了,没成功那就是我也不知道。我这样操作反正是成功了嘿嘿。 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值