在处理 PDF 文件时,合并多个 PDF 文件为一个单一文件或者将某个单一文件插入某个PDF文件是一个常见的需求。Python 提供了多种库来实现这一功能,其中 PyPDF2
是一个非常流行的选择。该库提供了简单易用的接口,包括 merge()
方法,可以将多个 PDF 文件合并成一个文件。
基本概念
- PDF 合并: 将两个或更多的 PDF 文件组合成一个新的 PDF 文件,保留所有原始文件的页面和内容。
- PDF插入:将某个PDF文件插入到PDF文件的指定位置,最终形成一个新的文件。
merge()
方法: 在PyPDF2
中,此方法用于将一个 PDF 文件的内容追加到另一个 PDF 文件中。
环境准备
首先,确保已经安装了 PyPDF2
库。如果尚未安装,可以通过以下命令安装:
pip install PyPDF2
使用示例(1)
下面是使用 PyPDF2
的 merge()
方法合并 PDF 文件的基本示例:
例如某文件夹(本例是practice_files)中有merge1.pdf、merge2.pdf、merge3.pdf这样3个PDF。如下所示:
利用PdfMerger实例通过.append()方法将merge1.pdf和merge2.pdf拼接到一起。将拼接后的PDF保存为home目录中的concatenated.pdf文件。
from pathlib import Path
from PyPDF2 import PdfMerger
# 定义 PDF 文件所在的目录路径,使用当前工作目录下的 'practice_files' 文件夹
pdf_dirs = Path.cwd() / 'practice_files'
# 使用 glob 方法查找以 'mer' 开头并以 '.pdf' 结尾的所有 PDF 文件
pdf_files = list(pdf_dirs.glob('mer*.pdf'))
# 将文件列表按数字顺序排列
pdf_files