基于Python打造一个PDF合并器(支持批量拖拽合并)

 更新时间:2025年07月08日 15:38:14   作者:金泽宸  
不知道你们有没有遇到过这种情况,多个 PDF想合成一份复习资料,或者下载了很多发票凭证和行程单,想合并成一份报销文件,本文就来使用Python为大家搭建一个PDF合并器吧

有没有遇到过这种情况:

  • 多个 PDF,你想合成一份复习资料?
  • 下载了很多发票凭证、行程单,想合并成一份报销文件?
  • 每次打开 Acrobat 合并太麻烦,或者要付费?

用 Python,只需几行代码,立刻搞定!

效果展示

安装依赖

pip install PyPDF2 rich

核心代码:merge_pdfs.py

import sys
from pathlib import Path
from PyPDF2 import PdfMerger
from rich import print
from rich.console import Console

console = Console()

def merge_pdfs(file_paths, output_path="merged.pdf"):
    merger = PdfMerger()
    for path in file_paths:
        console.print(f"📄 正在合并:[green]{path}[/]")
        merger.append(str(path))
    merger.write(output_path)
    merger.close()
    console.print(f"\n✅ 已输出合并文件:[bold yellow]{output_path}[/]")

if __name__ == "__main__":
    if len(sys.argv) < 2:
        print("[red]❌ 请至少指定两个 PDF 文件[/]")
        sys.exit(1)

    input_files = [Path(f) for f in sys.argv[1:]]
    merge_pdfs(input_files)

拖拽也能用!

Mac 或 Windows 上,可以直接把 PDF 拖到终端窗口运行:

$ python merge_pdfs.py [拖进来的文件1] [文件2] ...

拓展玩法

  • 支持合并任意数量的 PDF
  • 可定制输出名称:python merge_pdfs.py a.pdf b.pdf c.pdf -o all.pdf
  • 加入 GUI:配合 Tkinter 做个小工具

实用场景

  • 发票合并报销
  • 学习资料整合
  • 一键打包作业/合同/申请材料

到此这篇关于基于Python打造一个PDF合并器(支持批量拖拽合并)的文章就介绍到这了,更多相关Python PDF合并器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python获得图片base64编码示例

    python获得图片base64编码示例

    这篇文章主要介绍了用python语言获得图片的Base64编码的示例,大家参考使用吧
    2014-01-01
  • Python3内置模块之json编解码方法小结【推荐】

    Python3内置模块之json编解码方法小结【推荐】

    这篇文章主要介绍了Python3内置模块之json编解码方法小结,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • Python中TCP协议的探索与实例解析

    Python中TCP协议的探索与实例解析

    网络编程在当今数字化世界中扮演着至关重要的角色,本文将带你深入了解 Python 中的 TCP 协议,介绍网络编程的基础知识,并提供丰富的示例代码,希望对大家有所帮助
    2023-12-12
  • Python使用中文正则表达式匹配指定中文字符串的方法示例

    Python使用中文正则表达式匹配指定中文字符串的方法示例

    这篇文章主要介绍了Python使用中文正则表达式匹配指定中文字符串的方法,结合实例形式分析了Python正则匹配及字符编码相关操作技巧,需要的朋友可以参考下
    2017-01-01
  • 使用Python将TS文件转换为MP4的操作方法

    使用Python将TS文件转换为MP4的操作方法

    在多媒体处理中,将不同格式的视频文件进行转换是一项常见的任务,TS(Transport Stream)是一种常用的流媒体格式,而MP4则是更为广泛使用的通用视频格式,本文将介绍如何使用Python和FFmpeg工具将TS文件转换为MP4文件,需要的朋友可以参考下
    2025-04-04
  • Python实现两组数据纵向排序

    Python实现两组数据纵向排序

    在数据分析和处理过程中,排序是一项非常常见的操作,本文将详细讲解如何使用Python实现两组数据的纵向排序,并提供完整的开发思路和代码示例,需要的可以参考下
    2024-12-12
  • Python使用matplotlib.pyplot as plt绘图图层优先级问题

    Python使用matplotlib.pyplot as plt绘图图层优先级问题

    这篇文章主要介绍了Python使用matplotlib.pyplot as plt绘图图层优先级问题.文章围绕主题展开详细内容需要的小伙伴可以参考一下
    2022-04-04
  • python爬虫之urllib库常用方法用法总结大全

    python爬虫之urllib库常用方法用法总结大全

    urllib是python自带的请求库,各种功能相比较之下也是比较完备的,下面这篇文章主要给大家介绍了关于python爬虫之urllib库常用方法用法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-11-11
  • Python动态配置管理Dynaconf的实现示例详解

    Python动态配置管理Dynaconf的实现示例详解

    这篇文章主要为大家介绍了Python动态配置管理Dynaconf实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • 举例讲解Python装饰器

    举例讲解Python装饰器

    这篇文章主要介绍了Python装饰器的相关资料,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12

最新评论