使用python将多个PDF文件合并成一个

使用python将多个PDF文件合并成一个
前面需求是,将很多PDF文章内容整合成一个PDF文件
首先你要 pip install PyPDF2 安装好这个组件库
然后使用下面的代码

from PyPDF2 import PdfReader, PdfMerger
import oswk_in_file_path = r'D:/items_python/pdfdoc/input/'  #里面存放多个pdf文件,文件名将是作为目录的,这个注意一下
wk_out_file_path = r"D:/items_python/pdfdoc/output/"  #存放合成PDF文件的输出地址
wk_out_file_name = wk_out_file_path + '华为GaussDB实战训练营.pdf'  #定义输出的这个文件名称,记住,这个合成文件的目录来自于 合并前的文件名称wk_file_list = os.listdir(wk_in_file_path)
merger = PdfMerger()  # 声明 PdfMerger 对象, for merge multiple PDFs into a single PDFwk_page_num = 0  # 记录每次合并一个pdf 文件后总页数for item in wk_file_list:  # 遍历输入目录下的所有pdf 文件if not item.startswith('.'):print('输出要合并的文件名称: ', item) #以方便你的PDF文件在CDM窗口显示出列表wk_in_file_name = wk_in_file_path + itempdf_in = PdfReader(wk_in_file_name)  # 读取每个 pdfwk_title = item.split('.')[0]  # 目录标题 其实就是文件名字作为 目录标题merger.append(wk_in_file_name)  # 合并 pdf 动作开始merger.add_outline_item(wk_title, wk_page_num, None)  # 添加目录项并指向合并的pdf的头页wk_page_num += len(pdf_in.pages)  # .pages  获得读进来的pdf的页数merger.write(wk_out_file_name)
merger.close()

第一步:创建一个py2multPDF.py文件,将代码复制到文件里。
第二步:创建一个在D:/items_python/pdfdoc/input/ 目录,里面存放多个pdf文件,如file1.pdf,file2.pdf.....,多个文件
第三步:创建一个D:/items_python/pdfdoc/output/ 目录, 这个输出一个合并后的PDF文件存放地址
第四步:CDM命令窗口: python py2multPDF.py
完成四步后,在D:/items_python/pdfdoc/output/ 目录里就会躺着一个合并后的PDF文件“华为GaussDB实战训练营.pdf”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/147656.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【2023年csp-j第二轮】第一题解析

我们先看题目 题目描述 小 Y 的桌子上放着 n 个苹果从左到右排成一列,编号为从 11到 n。 小苞是小 Y 的好朋友,每天她都会从中拿走一些苹果。 每天在拿的时候,小苞都是从左侧第 1 个苹果开始、每隔 2 个苹果拿走 1 个苹果。随后小苞会将剩下的…

PostgreSQL 数据定义语言 DDL

文章目录 表创建主键约束非空唯一约束检查约束外键约束默认值约束 触发器表空间构建表空间 视图索引索引的基本概念索引的分类创建索引 物化视图 表创建 PostgreSQL表的构建语句与所有数据库都一样,结构如下,其核心在于构建表时,要指定上一些…

【算法挨揍日记】day29——139. 单词拆分、467. 环绕字符串中唯一的子字符串

139. 单词拆分 139. 单词拆分 题目描述: 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 解题思路&am…

(免费领源码)python+django+mysql线上兼职平台系统83320-计算机毕业设计项目选题推荐

摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对线上兼职等问题,对线上兼职进行…

【如何学习Python自动化测试】—— 页面元素定位

接上篇自动化测试环境搭建,现在我们介绍 webdriver 对浏览器操作的 API。 2、 页面元素定位 通过自动化操作 web 页面,首先要解决的问题就是定位到要操作的对象,比如要模拟用户在页面上的输入框中输入一段字符串,那就必须得定位到…

milvus数据库索引管理

一、建立向量索引 默认情况下,Milvus不会对小于1,024行的段进行索引。 1.准备索引参数 index_params {"metric_type":"L2","index_type":"IVF_FLAT","params":{"nlist":1024} } #"nlist"…

YOLOv8改进 | 如何在网络结构中添加注意力机制、C2f、卷积、Neck、检测头

一、本文介绍 本篇文章的内容是在大家得到一个改进版本的C2f一个新的注意力机制、或者一个新的卷积模块、或者是检测头的时候如何替换我们YOLOv8模型中的原有的模块,从而用你的模块去进行训练模型或者检测。因为最近开了一个专栏里面涉及到挺多改进的地方&#xff…

CSS特效014:模仿钟摆效果

CSS常用示例100专栏目录 本专栏记录的是经常使用的CSS示例与技巧,主要包含CSS布局,CSS特效,CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点,CSS特效主要是一些动画示例,CSS花边是描述了一些CSS…

buuctf-web-p6 [NPUCTF2020]web 狗

java: HelloWorld.class import java.io.PrintStream;public class HelloWorld {public static void main(String[] paramArrayOfString){System.out.println("众所周知,你是一名WEB选手,掌握javaweb也是一项必备技能,那么逆向个java应…

Shell脚本:Linux Shell脚本学习指南(第一部分Shell基础)一

你好,欢迎来到「Linux Shell脚本」学习专题,你将享受到免费的 Shell 编程资料,以及很棒的浏览体验。 这套 Shell 脚本学习指南针对初学者编写,它通俗易懂,深入浅出,不仅讲解了基本知识,还深入底…

高阶数据结构---树状数组

文章目录 楼兰图腾一个简单的整数问题 一个简单的整数问题2谜一样的牛 一、楼兰图腾OJ链接 二、一个简单的整数问题OJ链接 三、一个简单的整数问题2OJ链接 四、谜一样的牛OJ链接

云原生微服务架构图

云原生微服务架构的具体架构图会根据应用程序的需求、规模和业务场景而有所不同。以下是一个通用的云原生微服务架构图,具体每层的组件可能有所不同: 用户界面层: Web应用或移动应用: 提供用户访问和交互的前端应用。API Gateway&…

【深度学习实验】网络优化与正则化(六):逐层归一化方法——批量归一化、层归一化、权重归一化、局部响应归一化

文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、优化算法0. 导入必要的库1. 随机梯度下降SGD算法a. PyTorch中的SGD优化器b. 使用SGD优化器的前馈神经网络 2.随机梯度下降的改进方法a. 学习率调整b. 梯度估计修正 3. 梯度估计修正:动量法Momen…

Elasticsearch 应用

Elasticsearch 的应用 本文使用的版本为:7.14.0 todo:前端部分 Kibana的开发工具 IK分词器粗粒度 # 请求,通过【ik_smart】最粗粒度划分 GET _analyze {"analyzer": "ik_smart","text":"中国共产党" }# 返回 {"to…

Linux:进程替换和知识整合

文章目录 进程程序替换替换原理进程替换的理解 环境变量与进程替换命令行解释器实现逻辑 进程程序替换 前面已经学习了子进程的创建,但是子进程的创建不管怎么说,都是父进程代码的一部分,那么实际上如果想要子进程执行新的程序呢&#xff1f…

GDPU 数据结构 天码行空10

目录 数据结构实验十 树遍历应用一、【实验目的】二、【实验内容】三、【实验源代码】⭐ CPP版⭐ c语言版 四、实验结果 数据结构实验十 树遍历应用 一、【实验目的】 1、了解树的建立方法 2、掌握树与二叉树的转化及其遍历的基本方法 3、掌握递归二叉树遍历算法的应用 二、…

UiPath Studio 2023.10 Crack

UiPath Studio是一款功能强大且用户友好的集成开发环境 (IDE),专为机器人流程自动化 (RPA) 设计。它由自动化技术领域的领先公司UiPath开发。 以下是 UiPath Studio 的一些主要功能和组件: 图形用户界面 (GUI):UiPath Studio 具有直观且用户友…

【机器学习】 逻辑回归算法:原理、精确率、召回率、实例应用(癌症病例预测)

1. 概念理解 逻辑回归,简称LR,它的特点是能够将我们的特征输入集合转化为0和1这两类的概率。一般来说,回归不用在分类问题上,但逻辑回归却能在二分类(即分成两类问题)上表现很好。 逻辑回归本质上是线性回归,只是在特…

2311rust,1.31版本更新

1.31.0稳定版 Rust1.31可能是最激动人心的版本! 使用Cargo创建一个新项目: cargo new foo以下是Cargo.toml的内容: [package] name "foo" version "0.1.0" authors ["名字"] edition "2018" //版本. [dependencies]在[package]…

数据采集与大数据架构分享

实现场景 要实现亿级数据的长期收集更新,并对采集后的数据进行整理和加工,用于人工智能的训练数据素材集。 数据采集 java支持的爬虫框架还是有很多的,如:webMagic、Spider、Jsoup等添加链接描述 pipeline处理管道 数据并发开发…