今天这篇文章,我们不谈热点,毕竟最近谈论的热点有点多了,也有点腻了,我们来讲一些Python运用实践当中的小技巧,用Python来操作和处理PDF文件,通过本篇文章,读者朋友大概会学会

1. 通过Python脚本来创建PDF文件

2. 加密或给PDF文件上锁

3. 将多份PDF文件合并起来

4. 给PDF文件上水印

好,那就由小编一个一个来给大家演示看

1

通过Python脚本来创建PDF文件

我们首先来创建一个PDF文件,在下面的代码当中我们是用“reportlab”的模块,要是该模块没有被安装的话,可以通过下面的命令行来进行安装

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple reportlab

然后创建PDF文件的代码,在文件当中输入“Hello World”内容,默认的输入是从左上角开始输入,

from reportlab.pdfgen import canvas
report = canvas.Canvas("file1.pdf")
report.drawString(50, 800, "This is an example for Medium")
report.save()

2

加密或给PDF文件上锁

有一些PDF文件当中有重要的内容,需要将其加密、上锁,我们可以通过以下的代码来实现,用到的密码是“hello”,结果会新生成一个加密过后的PDF文件叫做“new_encrypted.pdf”,代码如下

from PyPDF2 import PdfFileReader, PdfFileWriterencrypted_file = PdfFileWriter()
original = PdfFileReader("棉花.pdf")
number_of_pages = original.numPagesfor i in range(number_of_pages):page = original.getPage(i)encrypted_file.addPage(page)password = "hello"
encrypted_file.encrypt(password)with open("new_encrypted.pdf", "wb")as file:encrypted_file.write(file)

3

合并多份PDF文件

下面,我们将通过几行Python的代码来实现两个PDF文件的合并,我们用到了“PdfFileMerger()”方法,代码如下

from PyPDF2 import PdfFileReader, PdfFileMergerfirst_file = PdfFileReader("棉花.pdf")
second_file = PdfFileReader("30岁将就.pdf")output = PdfFileMerger()output.append(first_file)
output.append(second_file)
output.write("new_merged.pdf")

4

给PDF文件添加水印

有时候我们需要给PDF文件添加水印,原理是们手上有两个PDF文件,其中一个PDF文件是没有水印的,另外一个是有水印的,我们将这两个PDF文件合并,并且生成一个新的PDF文件

from PyPDF2 import PdfFileReader,PdfFileWriteroriginal_file = "file1.pdf"
watermarked_pdf = "PDF_watermarked.pdf"
output_file = "output.pdf"input_file = open(original_file, 'rb')
input_pdf = PdfFileReader(input_file)
watermark_file = open(watermarked_pdf, 'rb')
watermark_pdf = PdfFileReader(watermark_file)
watermark_page = watermark_pdf.getPage(0)
pdf_page = input_pdf.getPage(0)pdf_page.mergePage(watermark_page)
output = PdfFileWriter()
output.addPage(pdf_page)
output_file = open(output_file, 'wb')
output.write(output_file)
output_file.close()
watermark_file.close()
input_file.close()

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载机器学习的数学基础专辑黄海广老师《机器学习课程》课件合集
本站qq群851320808,加入微信群请扫码:

【Python】如何用Python来操作PDF文件,建议收藏相关推荐

  1. Python实例篇:这样操作PDF文件一点都不枯燥了

    前言 大家好,我是辣条 之前辣条有发布过我们常用的两个技能点,今天第三个技能点(PDF)他来了 <Python实例篇:自动操作Excel文件(既简单又特别实用)> <Python技巧 ...

  2. 使用ITEXT操作PDF文件

    2019独角兽企业重金招聘Python工程师标准>>> 使用ITEXT操作PDF文件 pom.xml <dependency><groupId>com.ite ...

  3. 第19天---python办公自动化---操作PDF文件

    第19天-python办公自动化-操作PDF文件 在Python中,可以使用名为PyPDF2的三方库来读取PDF文件,可以使用下面的命令来安装它. pip install PyPDF2 读取PDF并抽 ...

  4. python 操作PDF文件 之 A3页面转A4

    python 操作PDF文件 A3页面转A4页面 文章目录 1. 需求概述 2. 代码实现 1. 需求概述 最近接到一份PDF资料需要打印,奈何页面是如图所示的A3格式的,奈何目前条件只支持打印A4. ...

  5. Python使操作PDF文件变得有趣

    大家好 我是毕加锁 (锁!) 大家在平时操作PDF文件时是不是感觉很枯燥 那么今天就教大家利用Python让操作PDF文件变得有趣起来  目录  工具  从PDF中提取文本  旋转和叠加页面  加密P ...

  6. day10 Python操作pdf文件

    目录 一.PyPDF2的使用 1. pypdf2的使用 2. pypdf2的基本应用 3. 为PDF文件页面添加水印 二.reportlab的使用 0. 导入工具 1. 创建画布 2. 添加文字 3. ...

  7. python使用fpdf生成结账发票pdf文件

    python使用fpdf生成结账发票pdf文件 目录 python使用fpdf生成结账发票pdf文件 #仿真数据 #生成pdf pip install fpdf

  8. python使用fpdf生成数据报告pdf文件

    python使用fpdf生成数据报告pdf文件 目录 python使用fpdf生成数据报告pdf文件 # 报告生成整体代码

  9. itex将html转成pdf加水印,itext操作PDF文件添加水印

    功能描述:添加图片和文字水印 /** * * [功能描述:添加图片和文字水印] [功能详细描述:功能详细描述] * @param srcFile 待加水印文件 * @param destFile 加水 ...

  10. bfo java_Java操作PDF文件(BFO) | 学步园

    上一次我们用iText这个工具在Java环境下操作PDF文件,现在我们换一个工具:BFO iText的确小巧,但是功能也有限制,只能简单的生成PDF文件,BFO却不同,能设置字体.版面等元素. 最新版 ...

最新文章

  1. js滚动页面到固定位置进行操作
  2. python脚本实例手机端-手机APP自动签到-python实现 - 运维之路
  3. ReactNative生成android平台的bundle文件命令
  4. python Typing模块-类型注解
  5. SpringBoot入门一
  6. 飞鸽传书 参与了公司的程序设计比赛
  7. mysql 5.6 gtid 复制_mysql 5.6 gtid复制
  8. bzoj1232[Usaco2008Nov]安慰奶牛cheer*
  9. python local global_Python 关键字global全局变量详解
  10. matlab根据数据生成实时动画,Matlab 坐标图动画,动态显示数据
  11. github超简教程
  12. Java匹马行天下之学编程的起点——编程常识知多少
  13. [LeetCode]41.First Missing Positive
  14. 提高开发效率的 Eclipse 实用操作
  15. Arrays.asList的用法
  16. 奥维地图显示no data(-5)解决
  17. Stata进行logistic回归绘制列线图并做内部验证
  18. ico转png(java实现)
  19. 翟菜花:搜索引擎这碗饭,到底能不能吃?
  20. http上传文件服务器限制大小,修改Nginx与Apache配置参数解决http状态码:413上传文件大小限制问题...

热门文章

  1. docker部署项目,对镜像,容器的操作
  2. 转发:CentOS下tar压缩排除某个文件夹或文件及解压
  3. 算法之如何进行算法复杂度分析
  4. TP框架(接口文档模板框架)
  5. 【自动化测试】搭建一个简单从Excel读取用例内容并输出结果的脚本
  6. android应用js
  7. List遍历删除注意事项
  8. tr的display属性出现td的colspan无效问题
  9. 【UVA1378】A Funny Stone Game (博弈-求SG值-输出方案)
  10. JavaScript学习代码整理(二)--函数