盘点一个Python自动化办公Word转化PDF/PDF转化Word问题

2024-01-30 12:48:29 浏览数 (2)

太平本是将军定,不许将军见太平。

大家好,我是皮皮。

一、前言

前几天在Python最强王者交流群【钟爱一生】问了一个Python自动化办公的问题。问题如下:

代码太长了,我就不贴出来了。

二、实现过程

后来【莫生气】给了单独的 pdf 和 word 互转的代码给他,【文件夹下的word文件批量转pdf格式】代码如下:

代码语言:javascript复制
import os
import sys
import comtypes.client


def word_to_pdf(input_folder, output_folder):
    # 获取输入文件夹下的所有Word文档
    word_files = [f for f in os.listdir(input_folder) if f.endswith('.docx')]

    # 创建输出文件夹(如果不存在)
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)

    # 遍历所有Word文档并转换为PDF格式
    for word_file in word_files:
        input_file = os.path.join(input_folder, word_file)
        output_file = os.path.join(output_folder, word_file.replace('.docx', '.pdf'))

        # 打开Word文档
        word_app = comtypes.client.CreateObject('Word.Application')
        word_app.Visible = False

        # 打开Word文档并另存为PDF格式
        doc = word_app.Documents.Open(input_file)
        doc.SaveAs(output_file, FileFormat=17)  # 17表示PDF格式
        doc.Close()

        # 关闭Word应用程序
        word_app.Quit()


if __name__ == '__main__':
    input_folder = r'C:UsersDesktopinput_files'
    output_folder = r'C:UsersDesktopoutput_files'
    word_to_pdf(input_folder, output_folder)

【pdf文件转word文档】代码如下:

代码语言:javascript复制
import pdfplumber
from docx import Document

# 读取PDF文件
with pdfplumber.open("example.pdf") as pdf:
    text = ""
    for page in pdf.pages:
        text  = page.extract_text()

# 创建一个新的Word文档
doc = Document()

# 将提取到的文本内容写入到Word文档中
doc.add_paragraph(text)

# 保存Word文档
doc.save("output.docx")

顺利地解决了粉丝的问题。

如果你也有类似这种数据分析的小问题,欢迎随时来交流群学习交流哦,有问必答!

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个Pandas自动化办公的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

0 人点赞