Python批量提取pdf首页并合并为一个文件

前情提要:python安装pypdf2包

复制代码
pip install pypdf2

第一种:既需要每一个单独的首页,也需要将首页合并。

整体操作思路,将文件夹下面原本的每一个pdf获取第一页,然后再写出,将其放在FirstPage文件夹下。再读取FirstPage文件夹下面的所有首页的pdf,将其合并为一个文件。

python 复制代码
from PyPDF2 import PdfReader, PdfWriter,  PdfMerger
import os

# 切换到pdf所在工作目录
os.chdir("D:/个人工作/paper202403")
#在上级目录新建一个文件夹
os.mkdir("../FirstPages")

#循环生成第一页PDF
for _ in os.listdir():
    origin_file = PdfReader(_)
    first_page = PdfWriter()
    first_page.add_page(origin_file.pages[0] )
    with open("../FirstPages/{}".format(_), "wb") as f:
        first_page.write(f)

#定义即将读取的指定PDF文件路径,注意文件的顺序,正斜杠/
target_path = '../FirstPages'

pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]
pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]

# 合并pdf文件
file_merger = PdfMerger()
for pdf in pdf_lst:
    file_merger.append(pdf)
# 合并pdf文件,并输出到指定路径
file_merger.write("../FirstPages/1_outputMerge.pdf")

第二种:只需要一个首页合并,不需要单独的首页。直接在一个Pdfwriter里add所有的首页,然后输出即可。

python 复制代码
from PyPDF2 import PdfReader, PdfWriter
import os


# 切换到pdf所在工作目录
os.chdir("D:/个人工作/paper202403")
#在上级目录新建一个文件夹
os.mkdir("../2FirstPages")

#循环读取文件夹下所有pdf首页,全部添加在first_page中
first_page = PdfWriter()
for _ in os.listdir():
    origin_file = PdfReader(_)
    first_page.add_page(origin_file.pages[0] )  
#写出first_page中所有首页信息
with open("../2FirstPages/2_outputMerge.pdf", "wb") as f:
    first_page.write(f)
相关推荐
shouchaobao2 天前
免费PDF工具:PDF转Word/Excel/图片+AI总结+合并拆分+OCR识别,多端无广告!
pdf·word·excel
南风微微吹2 天前
2026年最新国考《行测》《申论》历年真题及答案PDF电子版(2000-2025年)
pdf·国考
q***01772 天前
SpringBoot实战(三十二)集成 ofdrw,实现 PDF 和 OFD 的转换、SM2 签署OFD
spring boot·后端·pdf
嗯、.2 天前
使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如: Skia、OpenPDF)
java·pdf·itextpdf·openpdf·坐标变换矩阵
拓端研究室2 天前
专题:2025AI产业全景洞察报告:企业应用、技术突破与市场机遇|附920+份报告PDF、数据、可视化模板汇总下载
大数据·人工智能·pdf
南风微微吹2 天前
2026年新大纲普通话考试真题题库50套PDF电子版
pdf·普通话
JHC0000003 天前
Python PDF 相关操作
开发语言·python·pdf
CodeCraft Studio3 天前
ABViewer 16全新发布:3D可视化、PDF转DWG、G-code生成全面升级
pdf
诸神缄默不语4 天前
如何用Python处理文件:Word导出PDF & 如何用Python从Word中提取数据:以处理简历为例
python·pdf·word
i***66504 天前
SpringBoot实战(三十二)集成 ofdrw,实现 PDF 和 OFD 的转换、SM2 签署OFD
spring boot·后端·pdf