Python实现批量将word转换成pdf

 更新时间:2023年08月25日 09:20:09   作者:谷雨之际  
这篇文章主要为大家详细介绍了如何利用Python实现批量将word文档转换成pdf文件,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下

语言:python 3

用法:点击运行后,弹出窗口选择word文档所在文件夹,程序运行后对该文件夹下所有的word文件全部转换成pdf文件,生成的pdf文件名字与原wrod文件相同。

如运行中报错,需要自行根据报错内容按照缺失的库

例如:

#安装库
pip install pyautogui
#安装库
pip install  pillow

完整代码如下:

import os
import glob
from tkinter import Tk
from tkinter.filedialog import ask directory
from win32com.client import DispatchEx
#打开选择目录的对话框
Tk().withdraw()#隐藏Tkinter根窗口
word_dir=askdirectory(title="选择Word文件所在目录")
#获取当前目录
current_dir=os.getcwd()
#遍历目录中的Word文件
#word_files=glob.glob(os.path.join(word_dir,"*.docx;*.doc;*.dotx"))
word_files=[]
forfileinos.listdir(word_dir):
iffile.endswith(".docx")orfile.endswith(".doc")orfile.endswith(".dotx"):
word_files.append(os.path.join(word_dir,file))
#将Word文件转换为PDF并保存到当前目录
pdf_files=[]
#创建Word应用程序对象
word_app=DispatchEx("Word.Application")
forword_fileinword_files:
print('{}查找到')
pdf_file=os.path.join(word_dir,os.path.splitext(os.path.basename(word_file))[0]+".pdf")
doc=word_app.Documents.Open(word_file)
doc.SaveAs(pdf_file,FileFormat=17)
doc.Close()
pdf_files.append(pdf_file)
print(f'转换完成:{word_file}')
#关闭Word应用程序
word_app.Quit()

知识补充

有时候需要快速查看word文档的内容是否自己需要的,或者就是单纯需要将word文档转换成一张张图片。

所以除了批量将word文档转换成pdf文件,还为大家整理了Python批量实现将word文件转换成多张图片的示例代码,需要的可以参考下

思路:word文档直接生成图片比较蛮烦,可能会引起格式变化,就先将word文档转换成PDF,然后将PDF文档转换成图片。

语言:python 3

用法:点击运行后,弹出窗口选择文件夹,程序运行后会将该文件夹下所有word文档依次转换成PDF文档——PDF文档生成图片——删除PDF文档——继续处理下一个word文档。

如运行中报错,需要自行根据报错内容按照缺失的库

例如:

#安装库
pip install pyautogui
#安装库
pip install  pillow

完整代码如下:

#遍历目录及子文件夹中的word文件
import os
import glob
from tkinter import Tk
from tkinter.filedialog import askdirectory
from win32com.client import DispatchEx
from pdf2image import convert_from_path
# 打开选择目录的对话框
Tk().withdraw()  # 隐藏Tkinter根窗口
word_dir = askdirectory(title="选择Word文件所在目录")
# 遍历目录及子文件夹中的Word文件
word_files = []
for root, dirs, files in os.walk(word_dir):
    for file in files:
        if file.endswith(".docx") or file.endswith(".doc") or file.endswith(".dotx"):
            word_files.append(os.path.join(root, file))
# 创建Word应用程序对象
word_app = DispatchEx("Word.Application")
# 遍历Word文件进行转换
for word_file in word_files:
    print(f'转换中:{word_file}')
    # 转换为PDF并保存到Word所在目录
    pdf_file = os.path.splitext(word_file)[0] + ".pdf"
    doc = word_app.Documents.Open(word_file)
    doc.SaveAs(pdf_file, FileFormat=17)
    doc.Close()
    # 将PDF转换为图片
    images = convert_from_path(pdf_file)
    # 保存图片
    for i, image in enumerate(images):
        image_file = os.path.splitext(pdf_file)[0] + f"_page_{i+1}.jpg"  # 设置图片文件名
        image.save(image_file, "JPEG")
        print(f"保存图片:{image_file}")
    # 删除PDF文件
    os.remove(pdf_file)
    print(f"删除PDF文件:{pdf_file}")
# 关闭Word应用程序
word_app.Quit()

到此这篇关于Python实现批量将word转换成pdf的文章就介绍到这了,更多相关Python word转pdf内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于DATAFRAME中元素的读取与修改方法

    基于DATAFRAME中元素的读取与修改方法

    今天小编就为大家分享一篇基于DATAFRAME中元素的读取与修改方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python变量的作用域使用

    Python变量的作用域使用

    这篇文章主要介绍了Python变量的作用域使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Pandas的数据过滤实现

    Pandas的数据过滤实现

    这篇文章主要介绍了Pandas的数据过滤实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Python中Flask模板的使用与高级技巧详解

    Python中Flask模板的使用与高级技巧详解

    在Web开发中,直接将HTML代码写在Python文件中会导致诸多问题,Flask内置了Jinja2模板引擎,完美解决了这些问题,下面我们就来看看Flask模板的具体应用吧
    2025-05-05
  • python调用golang中函数方法

    python调用golang中函数方法

    由于simhash方法有多种实现方式,现python中simhash方法与golang中的不一样,需要两者代码生成结果保持一致,故采用python中的代码调用golang编译的so文件来实现,需要的朋友可以参考下
    2024-02-02
  • python项目下生成requirements.txt方法

    python项目下生成requirements.txt方法

    这篇文章主要介绍了python项目下生成requirements.txt的方法,很多小伙伴不知道如何生成requirements.txt,本文就通过代码示例给大家详细介绍如何生成,,需要的朋友可以参考下
    2023-06-06
  • Python字典操作简明总结

    Python字典操作简明总结

    这篇文章主要介绍了Python字典操作简明总结,本文总结了创建字典 、创建一个"默认"字典、遍历字典、获得value值、成员操作符:in或not in 、更新字典、删除字典等常用操作,需要的朋友可以参考下
    2015-04-04
  • 使用Python处理PDF文件的实践分享

    使用Python处理PDF文件的实践分享

    在现代数字化时代,PDF(Portable Document Format)文件已经成为广泛使用的电子文档格式,这篇文章主要为分享了Python处理PDF文件的简介与实践,需要的可以参考下
    2023-06-06
  • Python爬虫之Selenium设置元素等待的方法

    Python爬虫之Selenium设置元素等待的方法

    这篇文章主要介绍了Python爬虫之Selenium设置元素等待的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 利用Python绘制多种风玫瑰图

    利用Python绘制多种风玫瑰图

    这篇文章主要介绍了利用Python绘制多种风玫瑰图,风玫瑰是由气象学家用于给出如何风速和风向在特定位置通常分布的简明视图的图形工具,下文绘制实现详情,需要的小伙伴可以参考一下
    2022-05-05

最新评论