侧边栏壁纸
博主头像
Tool博主等级

行动起来,活在当下

  • 累计撰写 27 篇文章
  • 累计创建 3 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

源码1.批量合并PDF文档:Python脚本详解 📚✨

Jimmie
2024-01-14 / 0 评论 / 0 点赞 / 10 阅读 / 3209 字
温馨提示:
收藏保存网址不迷路:www.jimmie.top,若内容或图片失效,请反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

在日常工作中,我们经常会遇到需要批量合并PDF文件的需求。本文将详细介绍如何使用Python脚本来实现这一功能。我们将使用PyPDF2库来完成合并的任务,并为脚本添加一些用户交互以提高其实用性。

导入用到的包 📦

在开始编写代码之前,我们需要导入一些必要的Python包。以下是我们将要使用的包:

  • os:用于进行操作系统的交互,如更改工作目录和列出目录内容。

  • time:用于暂停程序执行,例如在程序结束前。

  • PyPDF2:一个纯Python实现的库,用于读取、分割、合并PDF文件。

确保在开始之前已经安装了PyPDF2库,如果没有安装,可以使用pip install PyPDF2命令进行安装。

import os
from time import sleep
from PyPDF2 import PdfMerger, PdfReader

代码示例与解释 🧩

以下是一个完整的Python脚本,用于批量合并PDF文件。接下来,我们将对每个部分的代码进行详细注释和解释。

# 打包命令,用于生成Windows可执行文件,这一行在实际运行脚本时可以忽略
# nuitka --standalone  --mingw64 --show-progress --show-memory --nofollow-import-to=PyPDF2,PIL,tkinter,http,email --windows-icon-from-ico=pdf合并.ico  --output-dir=o 1.批量合并PDF.py

# 打印软件信息,告知用户软件提供者信息
print("软件由 微信 Jimmie_ok 提供,有使用问题联系微信反馈,可定制各类软件,欢迎咨询")

# 获取用户输入的文件夹路径
file_path = input("请输入需要合并的PDF所在路径:")

# 尝试更改工作目录到用户输入的路径
try:
    os.chdir(file_path)
except OSError as e:
    print(e)
    print("文件夹不存在,请检查路径是否正确,程序5s后异常退出")
    sleep(5)
    exit()

# 列出当前工作目录下的所有文件
pdfs = os.listdir('.')

# 按照文件的修改时间进行排序,这样可以保证合并的顺序
sorted_file_list = sorted(pdfs, key=lambda x: os.path.getmtime(os.path.join('.', x)))

# 创建一个PdfMerger对象,用于合并PDF
pdf_all = PdfMerger()

# 遍历排序后的PDF文件列表
for pdf in sorted_file_list:
    # 以二进制读模式打开PDF文件
    with open(pdf, "rb") as temp:
        # 创建一个PdfReader对象
        pdfreader = PdfReader(temp)
        # 将当前PDF添加到合并对象中
        pdf_all.append(pdfreader, import_outline=True)

# 定义合并后PDF的保存路径和文件名
pdf_save = open(r".\pdfall.pdf", "wb")

# 将合并后的PDF写入文件
pdf_all.write(pdf_save)

# 关闭保存的PDF文件
pdf_save.close()

# 打印完成信息并在5秒后退出程序
print("合并完成,程序5秒后自动关闭")
sleep(5)

如何使用该脚本 🛠️

  1. 确保已经安装了Python环境和PyPDF2库。

  2. 将上述脚本保存为.py文件,例如merge_pdfs.py

  3. 打开终端或命令提示符,导航到脚本所在的目录。

  4. 运行脚本:python merge_pdfs.py

  5. 根据提示输入包含PDF文件的文件夹路径。

  6. 等待脚本执行完成,合并后的PDF文件将保存在输入的文件夹中,文件名为pdfall.pdf

结语 🎉

使用Python来批量合并PDF文件是一个高效且易于定制的解决方案。本文介绍的脚本提供了一个基础的示例,您可以根据自己的需求进行修改和扩展。如果您在使用过程中遇到任何问题,可以加微信一起学习交流。

jimmie.webp

  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
  3. QQ打赏

    qrcode qq
博主关闭了所有页面的评论