好工具,可以事半功倍,今天一起学习Pdf合与分

工具模块PyPDF2
层次分析—文件路径与文件读取与保存
读入文件夹:
data\in
读入文件名:temp.pdf
保存文件夹:
data\out
保存文件,1.pdf,2.pdf,3.pdf…
合并文件:
431.pdf

层次分析—从文件中取出每一页

    pdf_writer = PdfFileWriter()page = pdfReader.getPage(page_no)pdf_writer.addPage(page)

层次分析—从文件中取出每一页
构造出包括路径和每一页文件名的路径信息

    file ='{0}.pdf'.format(page_no + 1)outfile = os.path.join(outdir,file)

层次分析—创建路径信息到硬盘,同时调用pdf_writer中的保存的页面信息,写入到指定outfile位置
注:output_pdf是接收来自pdf_writer的写入信息的。

    with open(outfile,'wb') as output_pdf:pdf_writer.write(output_pdf)print('拆分并把文件写入')

层次分析—重新建立写变量pdf_wrigter,指定序号为3,0,2页面添加到pdf_writer中(合并)

    pdf_writer = PdfFileWriter()pdf_writer.addPage(pdfReader.getPage(3))pdf_writer.addPage(pdfReader.getPage(0))pdf_writer.addPage(pdfReader.getPage(2))

层次分析—重新建立文件名,路径,完成文件信息,通过with open()写入硬盘,完成合并后的写入操作

    file = '431.pdf'outfile = os.path.join(outdir,file)with open(outfile,'wb') as output_pdf:pdf_writer.write(output_pdf)print('选择需要页合并')

以下为完整的代码

# coding = utf-8
from PyPDF2 import *
import os
indir = r'data\in'
outdir = r'data\out'
infile = os.path.join(indir,'temp.pdf') #读取文件路径
pdfReader = PdfFileReader(infile)for page_no in range(pdfReader.numPages):pdf_writer = PdfFileWriter()page = pdfReader.getPage(page_no)pdf_writer.addPage(page)file ='{0}.pdf'.format(page_no + 1)outfile = os.path.join(outdir,file)with open(outfile,'wb') as output_pdf:pdf_writer.write(output_pdf)print('拆分完成')pdf_writer = PdfFileWriter()pdf_writer.addPage(pdfReader.getPage(3))pdf_writer.addPage(pdfReader.getPage(0))pdf_writer.addPage(pdfReader.getPage(2))file = '431.pdf'outfile = os.path.join(outdir,file)with open(outfile,'wb') as output_pdf:pdf_writer.write(output_pdf)print('选择需要页合并')

读后感:

  1. 代码分段书写,分析,目的是方便读者阅读理解每小段代码的内涵
  2. 通过解析这些小的代码片断,让大家理解代码运行的逻辑
  3. 通过前后的分析让大家知道python代码还是很容易理解,很容易阅读的

学习体会:

语言的学习不是一个快速的过程,能力的提升,确实需要知识的累积,每一个小的代码的内涵,组合成大段的代码块,大的代码块组合成整个软件体,从而完成系统性工程的创建。
提示每一个学习者不要过于心急,在自己的时间允许范围内,让真敲代码,仔细琢磨代码运行的逻辑,积累多了,你终于在某一天,也会突然感到豁然开朗。

【office办公-pdf篇】pdf合并与拆分让我们摆脱付费软件的功能限制好不好相关推荐

  1. C# 合并、拆分PDF

     在整理文件时,将多个同类型文档合并是实现文档归类的有效方法,也便于文档管理或者文档传输.当然,也可以对一些比较大的文件进行拆分来获取自己想要的部分文档.可以任意地对文档进行合并.拆分无疑为我们了提供 ...

  2. PDF文件怎么合并?看完这篇就懂了!

    不知道小伙伴们有没有这样的经历,那就是准备好一些pdf去打印店打印的时候,本来想要打印双面的,但是店家却表示pdf太小,只能一页一页的单页打印.这就给我们的钱包无形之中增加了很多的负担,因为有时候我们 ...

  3. java中pdfbox处理pdf常用方法(读取、写入、合并、拆分、写文字、写图片)

    本篇文档将介绍pdfbox处理pdf常用方法(读取.写入.合并.拆分.写文字.写图片). 图中为pdfbox用到的包 1.读取pdf 方法代码: /*** 读取pdf中文字信息(全部)* @param ...

  4. java pdf合并_Java 合并、拆分PDF文档

    本文将介绍如何在Java程序中合并及拆分PDF文档,合并文档时,包括合并多个不同PDF文档为一个文档,以及合并PDF文档的不同页面为一页:拆分文档是,包括将PDF文档按每一页拆分,以及按指定页数范围来 ...

  5. png文件合并_程序员学习之在Python中使用PDF:阅读、旋转、合并和拆分

    私信我或关注微信号:猿来如此呀,回复:学习,获取免费学习资源包. PDF 文档格式 今天,可移植文档格式(PDF)属于最常用的数据格式. 1990年,Adobe定义了PDF文档格式. PDF格式背后的 ...

  6. PDF文件拆分合并器PDF Merge PDF Splitter + Mac

    PDF Merge & PDF Splitter + Mac是专为Mac用户所提供的PDF文件拆分合并器,PDF Merge & PDF Splitter + Mac版能够为您将快速多 ...

  7. Linux中如何优雅的批量合并、拆分、加密pdf文件

    痛点 在windows中合并个pdf还要让你冲会员,真的是狗.linux下有没有一款工具能完成对pdf的合并.切分的工具呢? 有: PDFtk 功能 * Merge PDF Documents or ...

  8. [.NET开发] C# 合并、拆分PDF文档

    在整理文件时,将多个同类型文档合并是实现文档归类的有效方法,也便于文档管理或者文档传输.当然,也可以对一些比较大的文件进行拆分来获取自己想要的部分文档.可以任意地对文档进行合并.拆分无疑为我们了提供极 ...

  9. 使用Adobe Acrobat DC完成图像转PDF,PDF拆分,合并,调整尺寸,调整大小

    Use Adobe Acrobat DC to transform Image files to PDF, and split, combine, reshape PDF page, compress ...

  10. python处理PDF合并、拆分、删除、转换

    目录 PDF合并.拆分.删除页面 图片转PDF 举例 PDF合并.拆分.删除页面 2种合并方式:多个文件合并为一个文件,在文件中插入其他文件页面 2种分割方式:文件分割为固定页数,分割提取连续多页 2 ...

最新文章

  1. 各类机器学习问题的最优结果合集!附论文及实现地址索引
  2. boost::signals2::signal_type相关的测试程序
  3. java 绘图球的移动_求助在JFrame上绘制移动的小球
  4. c++语言偶数分离,在C++的链表中分离偶数和奇数节点
  5. 【Computer Organization笔记18】大实验讨论:控制器设计、指令流程表
  6. Python机器学习及实践——特征降维
  7. 一文读懂:DNA甲基化的作用及各种高通量检测方法比较
  8. @ResponseBody对象有空属性报错
  9. 计算机软件著作权评估
  10. Linux-fsck.ext4
  11. excel表格横向纵向变换_EXCEL打印妙招!(专为新手打造)!
  12. IE系列浏览器把application/json响应视为文件,并尝试下载
  13. 开源中国广州源创会分享
  14. 什么叫地推模式_地推模式一般使用什么方法可以成功?
  15. 北邮在线计算机,北邮在线圆我IT梦
  16. Windows10下安装配置Maven
  17. 那些年啊,那些事——一个程序员的奋斗史 ——26
  18. 不管怎样,苹果公司仍然是全球最有价值的公司
  19. Ubuntu20.04安装360浏览器
  20. kaldi查看不同文件的命令集锦

热门文章

  1. 华为盒子 鸿蒙,华为盒子真不值得买,网友总结了3个原因
  2. 工业机器人编程语言c语言,工业机器人编程语言和编程方式
  3. 使用wsimport命令将wsdl文件生成服务端以及客户端
  4. SPSS操作(五):主成分分析
  5. 川崎机器人示教盒维修_川崎示教器维修 大连川崎机器人控制器维修 川崎伺服电机维修...
  6. 一文读懂品质体系认证,学会判断 PCB 板厂生产资质
  7. 算法与数据结构面试题(6)-腾讯面试题
  8. STM32串口通信UARTx
  9. ArcGIS 拓扑验证与编辑共享要素
  10. Python数据分析《黑客帝国》-一切都不是偶然