python之合并pdf

复制代码
import os
from pathlib import Path
from PyPDF2 import PdfReader, PdfWriter

def extract_number_from_filename(path):
    # 从文件路径中提取文件名(不包括扩展名),然后再从文件名中提取前缀数字
    filename = Path(path).stem
    return int(filename.split('_')[0])


def merge_pdfs_in_folder(folder, output):
    

    # 获取文件夹中所有的PDF文件,并按照前缀数字进行排序
    paths = sorted([os.path.join(folder, filename) for filename in os.listdir(folder) if filename.endswith('.pdf')],
                   key=extract_number_from_filename)

    
    pdf_writer = PdfWriter()
    for path in paths:
        pdf_reader = PdfReader(path)
        for page in pdf_reader.pages:
            pdf_writer.add_page(page)

    with open(output, 'wb') as out:
        pdf_writer.write(out)

# 文件夹路径
folder = './ray_serve_pdfs/'
# 输出的pdf文件名
output = 'merged.pdf'
merge_pdfs_in_folder(folder, output)
复制代码

 

posted @   Shiyu_Huang  阅读(137)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示