首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 自动化指南(繁琐工作自动化)第二版:十五、使用 PDF 和 WORD 文档

相反,您必须创建一个新的 PDF,然后从现有文档中复制内容。本节中的示例将遵循这一通用方法: 将一个或多个现有 PDF(源 PDF)打开到PdfFileReader对象中。...复制页面 您可以使用 PyPDF2 将页面从一个 PDF 文档复制到另一个 PDF 文档。这允许您合并多个 PDF 文件、剪切不需要的页面或重新排序页面。...之后,这个列表按照字母顺序排序,关键字参数从key = str.lower到sort()➌。 创建一个PdfFileWriter对象来保存组合的 PDF 页面 ➍。...这些Paragraph对象中的每一个都包含一个或多个Run对象的列表。图 15-4 中的单句段落有四段。 图 15-4:在段中确定的对象和对象 Word 文档中的文本不仅仅是一个字符串。...这个字典文件包含超过 44,000 个英语单词,每行一个单词。 使用你在第 9 章中学到的文件读取技巧,通过阅读这个文件创建一个单词串列表。然后遍历列表中的每个单词,将其传递给decrypt()方法。

3.7K50

在 Python 中创建和修改 PDF 文件

该PdfFileReader对象会为您完成所有这些工作,因此您无需担心打开或关闭 PDF 文件! 现在您已经创建了一个PdfFileReader实例,您可以使用它来收集有关 PDF 的信息。...您可以使用PdfFileWriter来创建新的 PDF 文件。让我们探索这门课并学习使用 .pdf 创建 PDF 所需的步骤PyPDF2。...技术细节:请注意,您通过将文件对象传递给PdfFileWriter对象的.write()方法而不是文件对象的.write()方法来保存 PDF 文件。...在上面的示例中,使用PyPDF2以下三个步骤创建新的 PDF 文件: 创建一个PdfFileWriter实例。 向PdfFileWriter实例添加一个或多个页面。...使用 PDF 阅读器打开它,您会在同一个 PDF 文件中找到所有三份费用报告。 合并 PDF .merge() 要合并两个或多个 PDF,请使用PdfFileMerger.merge().

13K70
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python巧妙操作PDF文档

    使用Python,我们可以很方便地操作PDF文件,例如合并、分割、加密、解密、转换格式等等。 本文将使用 PyPDF2 库来展示如何使用 Python 操作 PDF 文件。...首先我们需要安装 PyPDF2 库,可以使用以下命令: pip install PyPDF2 这样我们就完成了Python操作PDF的准备工作 合并PDF文件 许多情况下,我们需要将多个 PDF 文件合并成一个文件...pdfs = ['file1.pdf', 'file2.pdf'] # 要合并的文件名列表 output_pdf = 'merged_files.pdf' # 合并后的文件名 # 创建 PDF 合并对象...下面是使用 PyPDF2 将一个 PDF 文件拆分成多个小的 PDF 文件的代码示例。...encoding='utf-8') as f: f.write(text) 本文介绍了使用 PyPDF2 库来操作 PDF 文件的示例代码,包括合并、拆分、加密、解密和转换格式等。

    22510

    用Python玩转PDF的各种骚操作

    最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。例如,现在可能有一个标准的封面,需要转到许多类型的报告中。...首先遍历输入的paths,并为每个输入创建一个PDF阅读对象。然后遍历PDF文件中的所有页面,并使用.addpage()将这些页面写入writer对象。...当完成对列表中所有PDF的所有页面的写入后,将在末尾写入新的结果中。 如果不想合并每个PDF的所有页面,可以通过添加一系列要添加的页面来稍微增强这个脚本。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...然后使用input_pdf和通用pdf_writer对象创建PDF的writer对象,以写出带水印的PDF。

    2.1K50

    如何使用Python玩转PDF各种骚操作?

    最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。例如,现在可能有一个标准的封面,需要转到许多类型的报告中。...首先遍历输入的paths,并为每个输入创建一个PDF阅读对象。然后遍历PDF文件中的所有页面,并使用.addpage()将这些页面写入writer对象。...当完成对列表中所有PDF的所有页面的写入后,将在末尾写入新的结果中。 如果不想合并每个PDF的所有页面,可以通过添加一系列要添加的页面来稍微增强这个脚本。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...然后使用input_pdf和通用pdf_writer对象创建PDF的writer对象,以写出带水印的PDF。

    2K20

    如何使用Python玩转PDF各种骚操作?

    最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。例如,现在可能有一个标准的封面,需要转到许多类型的报告中。...首先遍历输入的paths,并为每个输入创建一个PDF阅读对象。然后遍历PDF文件中的所有页面,并使用.addpage()将这些页面写入writer对象。...当完成对列表中所有PDF的所有页面的写入后,将在末尾写入新的结果中。 如果不想合并每个PDF的所有页面,可以通过添加一系列要添加的页面来稍微增强这个脚本。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...然后使用input_pdf和通用pdf_writer对象创建PDF的writer对象,以写出带水印的PDF。

    1.1K30

    如何使用Python玩转PDF各种骚操作?

    最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。例如,现在可能有一个标准的封面,需要转到许多类型的报告中。...首先遍历输入的paths,并为每个输入创建一个PDF阅读对象。然后遍历PDF文件中的所有页面,并使用.addpage()将这些页面写入writer对象。...当完成对列表中所有PDF的所有页面的写入后,将在末尾写入新的结果中。 如果不想合并每个PDF的所有页面,可以通过添加一系列要添加的页面来稍微增强这个脚本。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...然后使用input_pdf和通用pdf_writer对象创建PDF的writer对象,以写出带水印的PDF。

    1.2K20

    Python玩转PDF各种骚操作大全!

    最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。例如,现在可能有一个标准的封面,需要转到许多类型的报告中。...首先遍历输入的paths,并为每个输入创建一个PDF阅读对象。然后遍历PDF文件中的所有页面,并使用.addpage()将这些页面写入writer对象。...当完成对列表中所有PDF的所有页面的写入后,将在末尾写入新的结果中。 如果不想合并每个PDF的所有页面,可以通过添加一系列要添加的页面来稍微增强这个脚本。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...然后使用input_pdf和通用pdf_writer对象创建PDF的writer对象,以写出带水印的PDF。

    1.5K40

    Python玩转PDF文档的各种实用操作

    今天小编为大家分享如何用Python来玩转PDF文档,例如提取当中的部分内容并导出,给PDF文件添加水印,合并多份PDF文件等等,而本文会着重用到PyPDF2模块来玩转PDF文档,以及tabula模块来对...02 获取文档的部分内容并保存 而当我们想将其中的部分内容提取出来单独保存成一个PDF文件时,步骤也是十分的简单,首先用PdfFileWriter来创建一个writer变量, ?...03 合并多个PDF文档 除了提取PDF文件中的部分内容,PyPDF2库也能帮助我们进行合并PDF文件, ?...首先遍历输入的paths,并为每个输入创建一个PDF阅读对象,然后遍历PDF文件中的所有页面,并使用addPage()将这些页面写入writer对象。...当完成对列表中所有PDF的所有页面的写入后,将在末尾写入新的至新的结果中 04 添加水印 添加水印的目的在于它可以保护你的知识产权,表明文档的出处等等,我们可以使用PyPDF2当中的一些函数来达到此目的

    96710

    技术学习:Python(11)|操作PDF

    q=pd找到很多这种第三方库来供给我们使用,这些库可以很方便的处理word、excel、ppt、pdf等文件,今天我们就学习一下Python处理PDF文档的两个常用库「pdfplumber」、「pypdf2...json格式返回更多信息;它包括 PDF 级和页面级元数据,以及字典嵌套属性。 --pages [list of pages] 以空格分隔、1索引的页面列表或带连字符的页面范围。....width:宽度 .height:高度 .objects/ :一个列表,包含一个字典,用于嵌入页面上的每个此类对象。 .chars/ :文本字符列表,包含一个字典,用于嵌入页面上的每个此类对象。....lines/ :单一的一维线列表,包含一个字典,用于嵌入页面上的每个此类对象。 .rects/ :一个二维矩形列表,包含一个字典,用于嵌入页面上的每个此类对象。...如果您计划使用 PyPDF2 加密或解密使用 AES 的 PDF,您将需要安装一些额外的依赖项。使用常规安装支持使用 RC4 加密。

    41010

    Python 深入浅出 – PyPDF2 处理 PDF 文件

    实际应用中,可能会涉及处理 pdf 文件,PyPDF2 就是这样一个库,使用它可以轻松的处理 pdf 文件,它提供了读,割,合并,文件转换等多种操作。...参数: stream:*File 对象或支持与 File 对象类似的标准读取和查找方法的对象,也可以是表示 PDF 文件路径的字符串。...属性和方法 描述 getDestinationPageNumber(destination) 检索给定目标对象的页码 getDocumentInfo() 检索 PDF 文件的文档信息字典 getFields...=None,indirectRef=None) 此类表示 PDF 文件中的单个页面,通常这个对象是通过访问 PdfFileReader 对象的 getPage() 方法来得到的,也可以使用 createBlankPage...() 静态方法创建一个空的页面。

    1.7K30

    PDF文件批量去除密码

    背景 PDF加密是一种保护PDF文档内容的技术,通过密码或权限设置来控制对文档的访问和操作。PDF加密主要有两种类型:用户密码和所有者密码。...选择“文件” > “保护” > “使用密码加密”。 在弹出的对话框中,设置用户密码和/或所有者密码。 选择要应用的权限(如是否允许打印或编辑文档)。...技术依赖 我们主要使用Python的PyPDF2这个库的decrypt方法来去除密码。...实现思路 我们的目录大致如下图所示 这里每个文件夹都有若干个PDF文件,我们希望它能自动把每个PDF都去除密码,因此需要我们先能遍历出所有的PDF文件并使用PyPDF2的decrypt这个方法将密码移除...) # 创建一个新的PDF对象 pdf_writer = PyPDF2.PdfWriter() # 将去除密码后的每页

    23310

    使用PyPDF2模块处理PDF文件通用方法技巧

    处理PDF文件,使用PyPDF2模块,PyPDF2不能从PDF文档中提取图像、图表或其他媒体,但可提取文本,作为字符串返回。...创建PDF:使用PdfFileWriter对象创建PDF例如pdfwriter=PyPDF2.PdfFileWriter(),但PyPDF2模块不可以利用其将任何文 本写入PDF,该对象仅限从其他...PyPDF2模块不允许直接编辑PDF,必须 创建一个新的PDF,其一般步骤为: 1) 打开一个或多个已有的PDF得到PdfFileReader对象; 2) 创建一个新的PdfFileReader...叠加页面:PyPDF2模块可将一页的内容叠加到另一页上实现在页面上添加公司标志,时间戳或水印等。...加密PDF:在调用write()方法保存文件之前,对PdfFileWriter对象调用encrypt(‘口令字符串’)方法可实现对文档的加密。

    1.3K30

    如何使用python提取pdf表格及文本,并保存到excel

    ,保存为pdf实例 pdf = pdfplumber.open("E:\\nba.pdf") # 访问第二页 first_page = pdf.pages[1] # 自动读取表格信息,返回列表...「pdfplumber.PDF类」 属性 描述 .metadata 获取pdf基础信息,返回字典 .pages 一个包含pdfplumber.Page实例的列表,每一个实例代表pdf每一页的信息。...正如案例所示,pdfplumber.Page对象的.extract_table()方法可以提取表格,返回从页面上最大的表中提取的文本,以列表列表的形式显示,结构为row -> cell。...「表格抽取参数设置」 默认情况下,extract_table使用页面的垂直和水平线(或矩形边缘)作为单元格分隔符。该方法可以通过table_settings参数进行高度自定义。...首先,pdfplumber能轻松访问有关PDF对象的所有详细信息,且用于提取文本和表格的方法高级可定制,使用者可根据表格的具体形式来调整参数。

    3K30

    如何使用Python提取PDF表格及文本,并保存到Excel

    保存为pdf实例 pdf = pdfplumber.open("E:\\nba.pdf") # 访问第二页 first_page = pdf.pages[1] # 自动读取表格信息,返回列表 table...pdfplumber.PDF类 .metadata:获取PDF基础信息,返回字典 .pages:一个包含pdfplumber.Page实例的列表,每一个实例代表PDF每一页的信息。...正如案例所示,pdfplumber.Page对象的.extract_table()方法可以提取表格,返回从页面上最大的表中提取的文本,以列表列表的形式显示,结构为row -> cell。...表格抽取参数设置 默认情况下,extract_table使用页面的垂直和水平线(或矩形边缘)作为单元格分隔符。该方法可以通过table_settings参数进行高度自定义。...首先,pdfplumber能轻松访问有关PDF对象的所有详细信息,且用于提取文本和表格的方法高级可定制,使用者可根据表格的具体形式来调整参数。

    5K20

    PyPDF2的使用「建议收藏」

    使用简单的python脚本 1、安装 我们将使用第三方的模块 PyPDF2 ---- PyPDF2是作为PDF工具包构建的python库,它能够: 提取文档信息(标题,作者,…) 按页拆分文档 逐页合并文档...裁剪页面 合并多个页面到一个页 对pdf文档进行加密解密 等等 安装PyPDF2,在命令行下执行命令: pip install PyPDF2 ---- 注意,这个模块的名字对大小写是敏感的,所以,确保...我们来逐步分析一下上面的代码 pdfFile = open('example.pdf','rb') 我们以二进制的方式打开example.pdf,并且保存为pdfFile pdfReader =...PyPDF2.PdfFileReader(pdfFile) 我们创建了一个PyPDF2模块中PdfFileReader类的对象,并将pdfFile对象传进去,获取pdfReader对象 print...然后关闭两个文件 – 合并pdf文件 import PyPDF2 def PDFmerge(pdfs,output): #创建一个pdf文件合并对象 pdfMerger

    1.1K40

    【拆分PDF重命名】将PDF按页拆分多个PDF文件,并用PDF里文字对文件批量重命名,python和腾讯api识别改名的完整代码和详细步骤

    一个典型的场景是,一个多页的 PDF 文件包含了多个不同主题或信息单元,而用户希望将其按页拆分成多个单独的 PDF 文件,以便于更方便地管理、存储和检索这些信息。...以下是使用 Python 和腾讯云 OCR API 实现将 PDF 按页拆分多个 PDF 文件并用 PDF 里文字对文件批量重命名完整步骤和代码示例:步骤 1:准备工作安装必要的库:PyPDF2:用于拆分...可以使用以下命令安装这些库:bashpip install PyPDF2 tencentcloud-sdk-python pdf2image获取腾讯云 API 密钥:登录腾讯云控制台,在访问管理中创建...): """ 使用腾讯云 OCR 识别图像中的文字 :param image: 图像对象 :return: 识别出的文字 """ cred = credential.Credential...)步骤 3:运行代码将上述代码保存为一个 Python 文件(例如 pdf_split_and_rename.py),并将 your_secret_id、your_secret_key 和 your_input_pdf.pdf

    9810

    用Python处理PDF

    PDF处理的高频需求有:读取、写入、格式转换(pdf提取文本写入txt、根据url写入pdf等) 、批处理(多个pdf合并为1个、切分pdf)等等。...执行前后对比 切分pdf为多个pdf #将一个pdf文件根据一定规则切分为多个 sc_pdf=PdfFileReader(open(flst[0], 'rb')) #对第一章笔记进行处理count_sc...out_pdf=PdfFileWriter() #重建一个空对象 else: out_pdf.addPage(sc_pdf.getPage(c)) ?...切分测试结果截图 通过上面的实践,可以看到实现这几个需求高频使用到的方法就是新建一个Reader或Writer对象,通过.getNumPages()获取一共的页码,通过.getPage(page)获取特定页.../pypdf2-mindmap-01.JPG')img.save('D:/docOfStu/pypdf2-mindmap-01.pdf', 'PDF') #通过PIL库保存为pdf格式 #多张图片转pdfilst

    1.7K60

    Python也可以合并和拆分PDF,批量高效!

    而且很多软件是收费的,本来PDF合并拆分也不是什么难事,赚的是信息差的钱。 我一般会用Python的PyPDF2库来编辑PDF,其中就包括合并、拆分多个PDF。...使用Python来实现的好处是处理PDF速度快,可大批量操作,而且免费。...这两个函数使用 PyPDF2 库读取 PDF 文件,然后使用 PdfFileMerger() 类创建一个合并后的 PDF 文件,或使用 getPage() 方法获取指定页码的页面,并将其添加到合并后的...在测试代码中,首先调用 merge_pdf() 函数将两个 PDF 文件合并,然后调用 split_pdf() 函数将合并后的 PDF 文件拆分为多个页面,并将这些页面保存到不同的文件中。...这个脚本需要安装 PyPDF2 库才能使用。可以使用 pip install PyPDF2 命令安装 PyPDF2 库。

    19610
    领券