基于Python打造一个PDF合并器(支持批量拖拽合并)
作者:金泽宸
不知道你们有没有遇到过这种情况,多个 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合并器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!