将一个文件夹的pdf都去掉第一页后生成在另一个文件夹

目录

一.前言

二.环境配置

三.完整代码


一.前言

在日常的工作和学习中,我们经常需要处理大量的PDF文件。有时候,我们可能希望将一个文件夹中的所有PDF文件进行一些特定的操作,例如去掉每个PDF文件的第一页。

为了解决这个问题,本项目旨在提供一个自动化的解决方案,可以批量处理一个文件夹中的PDF文件,并将处理后的文件生成到另一个目标文件夹中。

该项目采用了Python编程语言,并利用了一些强大的库来实现功能。其中,我们使用了pdf2image库将PDF文件转换为图片格式,然后再利用img2pdf库将图片重新转换为PDF文件。通过这种方式,我们可以轻松地对每个PDF文件进行操作并去除第一页。

同时,为了确保项目的灵活性和易用性,我们为用户提供了可配置的参数,包括输入文件夹路径、输出文件夹路径等,以便根据实际需求进行自定义设置。

通过本项目,您将能够快速、高效地处理一个文件夹中的PDF文件,去掉每个文件的第一页,并生成到指定的目标文件夹中。这将极大地提升您的工作效率和操作便利性。

请尽情享受本项目带来的便利,希望它能对您的工作和学习有所帮助!

二.环境配置

安装好这个:

Release Release 24.02.0-0 · oschwartz10612/poppler-windows · GitHub

三.完整代码

import os
import glob
from pdf2image import convert_from_path
from PIL import Image
import img2pdfdef remove_first_page(input_folder, output_folder):# 获取目录中的所有PDF文件pdf_files = glob.glob(os.path.join(input_folder, '*.pdf'))for pdf_file in pdf_files:# 将PDF文件转换为图片images = convert_from_path(pdf_file)# 删除第一页图片images = images[1:]# 创建输出文件夹路径及新PDF文件名output_file = os.path.join(output_folder, os.path.basename(pdf_file))# 创建临时文件夹保存图片temp_folder = './temp'os.makedirs(temp_folder, exist_ok=True)# 保存图片到临时文件夹for i, image in enumerate(images):image.save(os.path.join(temp_folder, f'{i}.jpg'), 'JPEG')# 将图片转换回PDF并保存with open(output_file, 'wb') as f:f.write(img2pdf.convert([os.path.join(temp_folder, page) for page in os.listdir(temp_folder)]))# 删除临时文件夹及其中的图片for file in os.listdir(temp_folder):os.remove(os.path.join(temp_folder, file))os.rmdir(temp_folder)
input_dir = 'input'
output_dir = 'output'remove_first_page(input_dir, output_dir)

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

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

相关文章

【MATLAB源码-第193期】基于matlab的网络覆盖率NOA优化算法仿真对比VFINOA,VFPSO,VFNGO,VFWOA等算法。

操作环境: MATLAB 2022a 1、算法描述 NOA(Network Optimization Algorithm,网络优化算法)是一个针对网络覆盖率优化的算法,它主要通过优化网络中节点的分布和配置来提高网络的整体覆盖性能。网络覆盖率是衡量一个无…

【学习】软件压力测试对软件产品的作用

在信息化高速发展的今天,软件产品已经成为各行各业不可或缺的一部分。然而,随着软件功能的日益复杂和用户需求的不断增长,软件产品的稳定性和可靠性问题也愈发凸显。在这样的背景下,软件压力测试作为软件质量保障的重要手段之一&a…

【项目亮点】大厂中分布式事务的最佳实践 问题产生->难点与权衡(偏爱Saga)->解决方案

【项目亮点】大厂中分布式事务的最佳实践 问题产生->难点与权衡->解决方案->底层实现->应用案例 不断有同学问我大厂中实践分布式事务的问题,这里从分布式事务的产生,到强弱一致性与性能的权衡,再到最终落地的解决方案,再到实际的代码实现,再到我工作中实际使用SA…

【C语言__动态内存管理__复习篇6】

目录 前言 一、动态内存管理 二、动态内存函数 2.1 malloc 2.2 free 2.3 calloc 2.4 realloc 三、动态内存常见的6个使用错误 3.1 接收malloc/calloc返回的参数后未及时检查是否为NULL 3.2 越界访问动态内存空间 3.3 对非动态开辟的内存使用free释放 3.4 使用free只释放了…

AI时代,我要如何学习,才能跟上步伐

在21世纪这个被数据驱动的时代,人工智能(AI)已经渗透到我们生活的方方面面。无论是智能手机中的语音助手、在线客服的聊天机器人,还是自动驾驶汽车,AI的应用都在告诉我们一个信息:未来已来。因此&#xff0…

1.微服务介绍

完整的微服务架构图 注册中心 配置中心 服务集群 服务网关 分布式缓存 分布式搜索 数据库集群 消息队列 分布式日志服务 系统监控链路追踪 Jenkins docker k8s 技术栈 微服务治理: 注册发现、远程调用、负载均衡、配置管理、网关路由、系统保护、流量…

微信小程序 input 不能输入特殊字符的方法

微信小程序开发中经常遇到有表单提交的需求,一些特殊的字段要过滤掉特殊字符。比如姓名、籍贯、地址等,都要实现不能输入特殊字符的功能,可以创建一个统一的方法来处理输入事件,并在这个方法中检查输入的字符。 下面是一个简单的…

企业单位IPTV数字电视直播与点播系统-中国卫通怀来地球站IPTV数字电视直播与点播系统应用浅析

企业单位IPTV数字电视直播与点播系统-中国卫通怀来地球站IPTV数字电视直播与点播系统应用浅析 由北京海特伟业科技有限公司任洪卓发布于2024年4月19日 一、运营商光猫接入企业/单位IPTV数字电视直播与点播系统建设概述 中国卫通怀来地球站,位于怀来县土木镇&#xf…

小球反弹(蓝桥杯)

文章目录 小球反弹【问题描述】答案:1100325199.77解题思路模拟 小球反弹 【问题描述】 有一长方形,长为 343720 单位长度,宽为 233333 单位长度。在其内部左上角顶点有一小球(无视其体积),其初速度如图所…

非洲秃鹫优化算法C++简化版/Matlab优化版

非洲秃鹫优化算法(Vulture Optimization, VO)是一种基于自然界中非洲秃鹫觅食行为的群体智能优化算法。这种算法由Seyedali Mirjalili教授在2016年提出,旨在模拟非洲秃鹫在寻找食物时的社会互动和觅食策略,以解决复杂的优化问题。…

swift代码集合

码云地址 swift-h5 1.实现了用h5开发iOS程序,封装了一个通用的h5加载类WebVC 2.封装了一个js和原生交互的通用js类common.js 简易HUD 1.自实现的一个文本展示和加载等待 网络请求 1.自实现的一个网络请求模块,实现get、post、上传下载等功能

CentOS 7静默安装Oracle 11g(记一次最小化CentOS 7安装Oracle 11g的经历)

# [pdf在线免费转word文档](https://orcc.online/pdf) https://orcc.online/pdf 1.最小化安装CentOS 7后首先设置一下固定IP 可以先查询一下自己的网卡设备的名称,是ens33,所以网卡配置文件名称就是ifcfg-ens33(前面的ifcfg-不用管&#xf…

HCIP-Datacom-ARST必选题库_01_ACL【7道题】

一、单选 1.下面是一台路由器的部分配置,关于该配置描述正确的是: 源地址为1.1.1.1的数据包匹配第一条ACL语句rule 0,匹配规则为允许 源地址为1.1.1.3的数据包匹配第三条ACL语句rule 2,匹配规则为拒绝 源地址为1.1.1.4的数据包匹配第四条ACL语句rule 3,匹配规则为允…

rpc简介

RPC (Remote Procedure Call) RPC 是一种分布式计算技术,允许一个计算机程序(客户端)在本地调用另一个计算机程序(服务器)的方法或函数,就像调用本地代码一样,尽管这些程序可能运行在不同的网络…

【Python】函数(纯干货版)

目录 什么是函数 函数定义 函数的文档说明 局部变量和全局变量 综合案例:模拟实现ATM界面 什么是函数 函数是组织好的,可重复使用的,用于实现特定功能的代码段,将功能封装在函数内,可供随时随地重复利用&#xff…

加固平板电脑加速国产化!应用场景大科普

随着时代的发展,国产化平板电脑已经开始慢慢的实现了,国产芯片、国产操作系统、国产 GPU、国产 GNSS 等众多关键技术的集成与应用。全新的平台,全新的突破,全新的应用,让国产加固型移动计算机系列往前进了一步。那么加…

如何用 AI 工具做数据分析与可视化?

(注:本文为小报童精选文章。已订阅小报童或加入知识星球「玉树芝兰」用户请勿重复付费) 万字长文,助力你用 AI 提升科研效率。 2024 年 4 月 14 日,应武汉大学信息管理学院的邀请,我和北京大学步一老师给几…

python 头文件怎么写

本文主要以python2为例。首先介绍一下Python头文件的编程风格,然后再给大家详细介绍import部分的基本用法。这两个部分就是Python中头文件的组成模块。 编程风格 #!/usr/bin/env python #在文件头部 ( 第一行 ) 加上 设置 Python 解释器 # -*- coding: utf…

【开源】使用Python+Flask+Mysql快速开发一个用户增删改查系统

项目演示 项目本身很简单,增删改查是几乎所有系统的骨架。正所谓万丈高楼平地起,学会了增删改查,航母就指日可待了:),光速入门,直接看演示图: 项目地址 https://github.com/mudf…

设计模式代码实战-责任链模式

1、问题描述 小明所在的公司请假需要在OA系统上发布申请,整个请求流程包括多个处理者,每个处理者负责处理不同范围的请假天数,如果一个处理者不能处理请求,就会将请求传递给下一个处理者,请你实现责任链模式&#xff…