当前位置: 首页 > news >正文

使用python对指定文件夹下的pdf文件进行合并

使用python对指定文件夹下的pdf文件进行合并

  • 介绍
  • 效果
  • 代码

介绍

  • 对指定文件夹下的所有pdf文件进行合并成一个pdf文件。

效果

要合并的pdf文件,共计16个1页的pdf文件。
在这里插入图片描述
合并成功的pdf文件:一个16页的pdf文件。
在这里插入图片描述

代码

import os
from PyPDF2 import PdfFileReader, PdfWriter,PdfReaderdef merge_pdfs(directory, output_filename):pdf_writer = PdfWriter()# 遍历指定文件夹中的所有PDF文件for filename in os.listdir(directory):if filename.endswith('.pdf'):pdf_file_path = os.path.join(directory, filename)pdf_reader = PdfReader(open(pdf_file_path, 'rb'))# 逐页添加到PDF写入器中for page_num in range(len(pdf_reader.pages)):pdf_writer.add_page(pdf_reader.pages[page_num])# 将合并后的PDF写入到输出文件中with open(output_filename, 'wb') as output_pdf:pdf_writer.write(output_pdf)# 使用函数directory_path = './pdf_res'  # 替换为你的PDF文件夹路径
output_filename = 'merged_output.pdf'  # 合并后的PDF文件名
merge_pdfs(directory_path, output_filename)print(f"PDFs merged successfully to {output_filename}")

相关文章:

  • .NET8 动态添加定时任务(CRON Expression, Whatever)
  • 大模型关键词
  • 【Linux】线程同步和生产者-消费者模型
  • 算法2:滑动窗口(上)
  • 为什么我们应该放弃定义敏感数据?
  • C++的线程安全队列模板类封装
  • torch配置时出现问题
  • Zookeeper 面试题(六)
  • ThreadLocal原理及使用
  • 新书推荐:6.2 else if语句
  • SQL刷题笔记day1
  • 证券公司数据中心异地实时同步,如何能不依赖人工即可进行?
  • 【VsCode】通过tasks.json中的problemMatcher属性的fileLocation子属性设定问题的输出内容
  • 【笔记】软件架构师要点记录(1)
  • LeetCode-102. 二叉树的层序遍历【树 广度优先搜索 二叉树】
  • #Java异常处理
  • 5、React组件事件详解
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • CSS相对定位
  • css属性的继承、初识值、计算值、当前值、应用值
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • JavaScript新鲜事·第5期
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • Redis中的lru算法实现
  • 阿里云购买磁盘后挂载
  • 编写符合Python风格的对象
  • 创建一种深思熟虑的文化
  • 关于Flux,Vuex,Redux的思考
  • 汉诺塔算法
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 计算机在识别图像时“看到”了什么?
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 扑朔迷离的属性和特性【彻底弄清】
  • 使用docker-compose进行多节点部署
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • 用Visual Studio开发以太坊智能合约
  • 白色的风信子
  • gunicorn工作原理
  • 从如何停掉 Promise 链说起
  • 进程与线程(三)——进程/线程间通信
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • #pragam once 和 #ifndef 预编译头
  • (2.2w字)前端单元测试之Jest详解篇
  • (floyd+补集) poj 3275
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (搬运以学习)flask 上下文的实现
  • (十)T检验-第一部分
  • (四)Linux Shell编程——输入输出重定向
  • (一)u-boot-nand.bin的下载
  • (一)插入排序
  • (转)EXC_BREAKPOINT僵尸错误
  • (转)程序员技术练级攻略
  • ./configure,make,make install的作用(转)
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .Net 应用中使用dot trace进行性能诊断