本文介绍: 日常生活中,当遇到需要将某个PDF文件转换为Word格式文件时,一般是通过一些在线格式转换网站,或者软件来完成,但我们可以使用python来完成这个需求(当然,这种方法仅能够满足大部分格式)。

日常生活中,当遇到需要将某个PDF文件转换为Word格式文件时,一般是通过一些在线格式转换的网站,或者软件来完成,但我们可以使用python来完成这个需求(当然,这种方法仅能够满足大部分格式)。

前提:

使用pdf2docx库,在保持原来内容格式不变的情况下将PDF转换为Word,它专门用于在不丢失格式的情况下将PDF文件转换为Word文件。此库的安装可能需要一些依赖项,例如pandastqdm可以使用以下命令安装

pip install pdf2docx pandas tqdm

由于需要调用文件路径,所以需要使用OS库。

场景一:单文件转换。

需要修改代码中的pdf_file_path地址替换为所需要转换的pdf文件地址。(地址中的转义字符“”替换成“\”或者用//)

import os  
from pdf2docx import Converter  
  
  
def pdf_to_docx(pdf_path):  
    # 获取PDF文件所在的目录  
    pdf_directory = os.path.dirname(pdf_path)  
  
    # 生成Word文件的路径  
    pdf_filename = os.path.splitext(os.path.basename(pdf_path))[0]  
    docx_filename = pdf_filename + "_converted.docx"  
    docx_path = os.path.join(pdf_directory, docx_filename)  
  
    # 使用pdf2docx库将PDF转换为Word  
    cv = Converter(pdf_path)  
    cv.convert(docx_path, start=0, end=None)  
    cv.close()  
  
    return docx_path  
  
  
if __name__ == "__main__":  
    # 用法示例  
    pdf_file_path = "C://Users//Desktop//test.pdf"  
  
    # 调用pdf_to_docx函数进行转换  
    generated_docx_path = pdf_to_docx(pdf_file_path)  
  
    print(f"Word文件已生成{generated_docx_path}")

场景二:某个文件夹内所有的pdf文件转换,

需要将input_pdf_folder替换成所要转换的pdf文件夹,其次将output_docx_folder设置输出文件夹

import os  
from pdf2docx import Converter  
  
def convert_pdfs_to_docx(input_folder, output_folder):  
    # 确保输出目录存在,如果不存在创建  
    os.makedirs(output_folder, exist_ok=True)  
  
    # 遍历目录下所有PDF文件并转换为Word  
    pdf_files = [f for f in os.listdir(input_folder) if f.endswith(".pdf")]  
  
    for pdf_file in pdf_files:  
        pdf_path = os.path.join(input_folder, pdf_file)  
        docx_output_path = os.path.join(output_folder, f"{os.path.splitext(pdf_file)[0]}.docx")  
  
        # 使用pdf2docx库将PDF转换为Word  
        cv = Converter(pdf_path)  
        cv.convert(docx_output_path, start=0, end=None)  
        cv.close()  
  
        print(f"Converted: {pdf_path} -> {docx_output_path}")  
  
if __name__ == "__main__":  
    # 用法示例  
    input_pdf_folder = "C:\Users\Desktop\input"  
    output_docx_folder = "C:\Users\Desktop\out"  
  
    # 批量转换目录下所有PDF文件为Word文件  
    convert_pdfs_to_docx(input_pdf_folder, output_docx_folder)

原文地址:https://blog.csdn.net/l_jd_gululu/article/details/134729218

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_23342.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注