概述

Python处理PDF文件需要安装相应的库:【PyPDF2】库

使用场景

工作中可能会涉及处理pdf文件,PyPDF2就是这样一个库, 使用它可以轻松的处理 pdf 文件,它提供了读、写、分割、合并、文件转换等多种操作。

安装库

网站

使用说明

PyPDF2 官方文档(documentation)

学习网站

博客

# 导入相关类
from PyPDF2 import PdfFileReader, PdfFileWriter # 定义输入文件和输出文件(路径)
inputFile = 'read.pdf'
outputFile = 'write.pdf' # 获取一个 PdfFileReader 对象
pdfReader = PdfFileReader(open(inputFile, 'rb')) # 获取 PDF 的页数
pageCount = pdfReader.getNumPages()
print(pageCount) # 返回一个 PageObject
page = pdfReader.getPage(i) # 获取一个 PdfFileWriter 对象
pdfWriter = PdfFileWriter() # 将一个 PageObject 加入到 PdfFileWriter 中
pdfWriter.addPage(page) # 输出到文件中
pdfWriter.write(open(outputFile, 'wb'))

GitHub

提供了使用案例,当我们使用的时候再具体查看。

Python应用【PDF处理-pypdf2】的更多相关文章

  1. Python处理PDF和Word文档常用的方法

    Python处理PDF和Word文档的模块是PyPDF2,使用之前需要先导入. 打开一个PDF文档的操作顺序是:用open()函数打开文件并用一个变量来接收,然后把变量给传递给PdfFileReade ...

  2. Python处理PDF及生成多层PDF

    Python提供了众多的PDF支持库,本文是在Python3环境下,试用了两个库来完成PDF的生成的功能.PyPDF对于读取PDF支持较好,但是没找到生成多层PDF的方法.Reportlab看起来更成 ...

  3. python实用小技能分享,教你如何使用 Python 将 pdf 文档进行 加密 解密

    上次说了怎么将word转换为pdf格式 及 实现批量将word转换为pdf格式(点击这里),这次我又get到一个新技能–使用 Python 将 pdf 文档进行 加密 解密,哈哈哈 希望帮到更多人! ...

  4. Python绘制PDF文件~超简单的小程序

    Python绘制PDF文件 项目简介 这次项目很简单,本次项目课,代码不超过40行,主要是使用 urllib和reportlab模块,来生成一个pdf文件. reportlab官方文档 http:// ...

  5. python制作pdf电子书

    python制作pdf电子书 准备 制作电子书使用的是python的pdfkit这个库,pdfkit是 wkhtmltopdf 的Python封装包,因此在安装这个之前要安装wkhtmltopdf 安 ...

  6. 【PyMuPDF和pdf2image】Python将PDF转成图片

    前言: 在最近的测试中遇到一个与PDF相关的测试需求,其中有一个过程是将PDF转换成图片,然后对图片进行测试. 粗略的试了好几种方式,其中语言尝试了Python和Java,总体而言所找到的Python ...

  7. 趣学Python编程PDF高清完整版免费下载|百度网盘

    百度网盘:趣学Python编程PDF高清完整版免费下载 提取码:ts47 内容简介 python是一款解释型.面向对象.动态数据类型的高级程序设计语言.python语法简捷而清晰,具有丰富和强大的类库 ...

  8. 疯狂Python讲义PDF高清完整版免费下载|百度网盘

    百度网盘:疯狂Python讲义PDF高清完整版免费下载 提取码:uzba 内容简介 <疯狂Python讲义>既是一本适合初学者入门Python的图书(一个8岁的小朋友在未出版前已学习了本书 ...

  9. python程序设计PDF高清完整版免费下载|百度云盘

    百度云盘:python程序设计PDF高清完整版免费下载 提取码:bvsz Python 程序设计基础难易程度适中.除Python应用开发基础知识之外,还适当介绍了Python标准库以及内置对象的工作原 ...

随机推荐

  1. poj2817状态压缩 升维

    /* 两两求出字符串之间最大可以匹配的值 由已知状态推导出位置状态 状态s表示已经加入到集合中的字符串,0表示串i不存在,1存在 由于字符串的加入顺序会影响结果,所以增加一维来表示 dp[S][i]表 ...

  2. java测试

    //信1705-1 20173527 刘津鑫package money;import java.io.IOException;import java.io.Serializable;import ja ...

  3. Python序列[1,2,3,4,5]

    序列是用于存放多个值得连续空间,并按一定顺序排列,每一个值(称为元素)都分配一个数,称为索引或位置.通过该索引可以取出相应的值. 索引 序列中的元素都是有序的.拥有自己编号(从0开始),我们可以通过索 ...

  4. SSM + Android 网络文件上传下载

    SSM + Android 网络交互的那些事 2016年12月14日 17:58:36 ssm做为后台与android交互,相信只要是了解过的人都知道一些基本的数据交互,向json,对象,map的交互 ...

  5. javascript 自动填充功能

    javascript 自动填充功能 javascript: (function(){ $("#zipcode").val("zip");$("#pho ...

  6. const 和 const_cast

    对于const变量,我们不能修改它的值,这是这个限定符最直接的表现.但是我们就是想违背它的限定希望修改其内容怎么办呢?下边的代码显然是达不到目的的: ; int modifier = constant ...

  7. 如何让微信里的html应用弹出“点击右上角分享到朋友圈”的图片

    一个分享按钮,一个隐藏的图片(这个图片绝对定位在右上角)然后就是点击显示,点击隐藏了... <a href="javascript:;" onclick="docu ...

  8. Spring MVC基础知识整理➣拦截器和自定义注解

    概述 Spring MVC中通过注解来对方法或者类进行动态的说明或者标注,类似于配置标识文件的属性信息.当标注的类或者方式被使用时候,通过提取注解信息来达到对类的动态处理.在 MVC中,我们常用的注解 ...

  9. WebApi 得到提交过来的 post 数据

    byte[] byts = new byte[System.Web.HttpContext.Current.Request.InputStream.Length]; System.Web.HttpCo ...

  10. 一起学Hadoop——TotalOrderPartitioner类实现全局排序

    Hadoop排序,从大的范围来说有两种排序,一种是按照key排序,一种是按照value排序.如果按照value排序,只需在map函数中将key和value对调,然后在reduce函数中在对调回去.从小 ...