python 删除pdf页面_Python脚本使用pyPDF删除空白页面
我正在尝试使用pyPDF编写几个
python脚本将PDF页面分成六个单独的页面,正确排序(通常是正面和背面打印,因此每隔一页需要对其子页面进行不同的排序),并删除生成的空白页面输出文档的结尾.
我编写了以下脚本来剪切PDF页面并重新排序.将每个页面分成两列,每列分成三页.我对python不是很有经验,所以请原谅我做得不对的任何事情.
#!/usr/bin/env python
import copy, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for i in range(0,input.getNumPages(),2):
p = input.getPage(i)
q = copy.copy(p)
r = copy.copy(p)
s = copy.copy(p)
t = copy.copy(p)
u = copy.copy(p)
(x, y) = p.mediaBox.lowerLeft
(w, h) = p.mediaBox.upperRight
p.mediaBox.lowerLeft = (x, 2 * h / 3)
p.mediaBox.upperRight = (w / 2, h)
q.mediaBox.lowerLeft = (w / 2, 2 * h / 3)
q.mediaBox.upperRight = (w, h)
r.mediaBox.lowerLeft = (x, h / 3)
r.mediaBox.upperRight = (w / 2, 2 * h / 3)
s.mediaBox.lowerLeft = (w / 2, h / 3)
s.mediaBox.upperRight = (w, 2 * h / 3)
t.mediaBox.lowerLeft = (x, y)
t.mediaBox.upperRight = (w / 2, h / 3)
u.mediaBox.lowerLeft = (w / 2, y)
u.mediaBox.upperRight = (w, h / 3)
a = input.getPage(i+1)
b = copy.copy(a)
c = copy.copy(a)
d = copy.copy(a)
e = copy.copy(a)
f = copy.copy(a)
(x, y) = a.mediaBox.lowerLeft
(w, h) = a.mediaBox.upperRight
a.mediaBox.lowerLeft = (x, 2 * h / 3)
a.mediaBox.upperRight = (w / 2, h)
b.mediaBox.lowerLeft = (w / 2, 2 * h / 3)
b.mediaBox.upperRight = (w, h)
c.mediaBox.lowerLeft = (x, h / 3)
c.mediaBox.upperRight = (w / 2, 2 * h / 3)
d.mediaBox.lowerLeft = (w / 2, h / 3)
d.mediaBox.upperRight = (w, 2 * h / 3)
e.mediaBox.lowerLeft = (x, y)
e.mediaBox.upperRight = (w / 2, h / 3)
f.mediaBox.lowerLeft = (w / 2, y)
f.mediaBox.upperRight = (w, h / 3)
output.addPage(p)
output.addPage(b)
output.addPage(q)
output.addPage(a)
output.addPage(r)
output.addPage(d)
output.addPage(s)
output.addPage(c)
output.addPage(t)
output.addPage(f)
output.addPage(u)
output.addPage(e)
output.write(sys.stdout)
然后我使用以下脚本删除空白页.
#!/usr/bin/env python
import copy, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for i in range(0,input.getNumPages()):
p = input.getPage(i)
text = p.extractText()
if (len(text) > 10):
output.addPage(p)
output.write(sys.stdout)
问题似乎是,当页面被明显裁剪下来时,文本绘制命令仍然存在.这些页面都不会被扫描,因此如果它们是空白的,则它们实际上是空白的.有没有人对我可以做的不同的事情有任何想法,或者可能采取完全不同的方法来删除空白页?我真的很感激任何帮助.
python 删除pdf页面_Python脚本使用pyPDF删除空白页面相关推荐
- Angular页面出不来,显示空白页面。。。
Angular页面出不来,显示空白页面... ng serve -o --port 8888 启动正常, ng build --prod --base-href ./ 打包也正常, 什么错误信息都没有 ...
- python批量删除微信好友_python 脚本查看微信把你删除的好友--win系统版
PS:目测由于微信改动,该脚本目前不起作用 下面截图来自原作者0x5e 相信大家在微信上一定被上面的这段话刷过屏,群发消息应该算是微信上流传最广的找到删除好友的方法了.但群发消息不仅仅会把通讯录里面所 ...
- python读取pdf文件_python读取pdf文件
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 一.安装pdfminer3k模块?二. 读取pdf文件import sysimp ...
- python刷网易云_Python脚本用于定时关闭网易云音乐PC客户端
本文主要讲述如何使用Python在指定的秒数后关闭Windows上运行的程序(此程序以网易云音乐为例).本文的背景是昨晚发现网易云音乐的PC客户端没有定时关闭的功能,可以使用Python编写一个简单的 ...
- python读取pdf表格_Python使用Tabula提取PDF表格数据
今天遇到一个批量读取pdf文件中表格数据的需求,样式大体是以下这样: python读取PDF无非就是三种方式(我所了解的),pdfminer.pdf2htmlEX 和 Tabula.综合考虑后,选择了 ...
- 利用python处理pdf文本_Python用于NLP :处理文本和PDF文件
原标题:Python用于NLP :处理文本和PDF文件 提示:代码图片可以点击全屏查看,双指操作还可以放大缩小. 这是我的Python用于自然语言处理(NLP)系列文章的第一篇文章.在本文中,我们将从 ...
- python写入pdf文件_Python用于NLP :处理文本和PDF文件
Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 这是我的Python用于自然语言处理(NLP)系列文章的第一篇文章.在本文中,我们将从Python for ...
- python处理pdf实例_Python实战-从菜鸟到大牛的进阶之路pdf_Python教程
资源名称:Python实战-从菜鸟到大牛的进阶之路 pdf 第1章 Python 处理 cassandra 升级后的回滚脚本 第 2 章 多套方案来提高 python web 框架的并发处理能力 第 ...
- 用python汇总pdf文件_Python处理PDF文件-简译与总结
最近看到一篇介绍Python中pyPDF模块的文章,详细介绍了使用pyPDF模块获取PDF文件信息,合并拆分PDF文件等功能.很方便,在此搬运分享以下: 全文介绍了以下几方面的功能 提取文件信息 旋转 ...
最新文章
- JWT的使用及登录账号
- PacBio Sequel概述
- Vivado中debug用法
- 我们常用的 Integer 内部为什么会去实现 Comparable 接口?
- 岗位推荐 | 阿里巴巴达摩院招聘自然语言处理、机器翻译算法专家
- boost::statechart模块实现使用正交状态和 state_downcast 查询正交区域的状态的测试程序
- 【QT 数据库专辑】【02】WIN7下搭建本地MYSQL数据库02 - 建立数据库的驱动程序-QT为例-完备版
- MySQL进阶11--DDL数据库定义语言--库创建/修改/删除--表的创建/修改/删除/复制
- UVA 10246 Asterix and Obelix
- 计算机一级操作题题库在线,全国计算机一级操作题「题库」
- CentOS(Linux)安装KETTLE教程 并配置执行定时任务
- 三维扫描用于3D打印技术
- iTunes 给iPhone制作铃声
- 合并两个工作表怎么做?
- JAVA-stage3-day03-MybatisMybatisPlus
- 迅捷音频转换器如何提取音频文件教程
- 轻量化后台管理HTML设计页面
- 警告: Request method ‘POST‘ not supported。的原因之一——空格毁一生
- 免费好用的IPv6之一个有趣的需求——浅谈Openwrt的VLAN
- 【信息检索】链接分析