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

使用python将pdf拆分为多个不同页长的pdf。

使用Python将PDF拆分为多个不同页长的PDF可以通过使用PyPDF2库来实现。PyPDF2是一个功能强大的Python库,可以用于处理PDF文件。

以下是一个示例代码,演示如何使用Python将PDF拆分为多个不同页长的PDF:

代码语言:txt
复制
import os
from PyPDF2 import PdfFileReader, PdfFileWriter

def split_pdf(input_path, output_dir, page_lengths):
    # 读取输入PDF文件
    with open(input_path, 'rb') as file:
        pdf = PdfFileReader(file)
        total_pages = pdf.getNumPages()

        # 确保页长列表的长度与总页数相同
        if len(page_lengths) != total_pages:
            raise ValueError("页长列表的长度与总页数不匹配")

        # 拆分PDF
        for i in range(total_pages):
            page_length = page_lengths[i]

            # 创建一个新的PDF写入器
            writer = PdfFileWriter()
            writer.addPage(pdf.getPage(i))

            # 构造输出文件路径
            output_path = os.path.join(output_dir, f"page_{i+1}_length_{page_length}.pdf")

            # 写入拆分后的PDF文件
            with open(output_path, 'wb') as output_file:
                writer.write(output_file)

            print(f"已成功拆分第 {i+1} 页,页长为 {page_length} 的PDF文件:{output_path}")

# 示例用法
input_pdf = 'input.pdf'  # 输入PDF文件路径
output_directory = 'output'  # 输出目录路径
page_lengths = [1, 2, 3, 4]  # 页长列表,与总页数相同

split_pdf(input_pdf, output_directory, page_lengths)

在上述示例代码中,我们首先导入了必要的库,然后定义了一个名为split_pdf的函数。该函数接受输入PDF文件路径、输出目录路径和页长列表作为参数。函数使用PyPDF2库打开输入PDF文件,并获取总页数。然后,它遍历每一页,并根据给定的页长列表创建一个新的PDF写入器。最后,它将拆分后的PDF文件写入到输出目录中,并打印出拆分成功的信息。

请注意,上述示例代码中的input.pdf是输入PDF文件的路径,output是输出目录的路径,[1, 2, 3, 4]是一个示例的页长列表。你可以根据实际需求修改这些参数。

此外,腾讯云提供了一系列与PDF处理相关的产品和服务,例如腾讯文档转换(PDF转换)服务、腾讯云对象存储(COS)等。你可以访问腾讯云官方网站获取更多关于这些产品的详细信息和使用指南。

希望以上信息能够对你有所帮助!

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

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

一个典型的场景是,一个多页的 PDF 文件包含了多个不同主题或信息单元,而用户希望将其按页拆分成多个单独的 PDF 文件,以便于更方便地管理、存储和检索这些信息。...以下是使用 Python 和腾讯云 OCR API 实现将 PDF 按页拆分多个 PDF 文件并用 PDF 里文字对文件批量重命名完整步骤和代码示例:步骤 1:准备工作安装必要的库:PyPDF2:用于拆分...(input_pdf_path): """ 将 PDF 按页拆分为多个 PDF 文件 :param input_pdf_path: 输入的 PDF 文件路径 :return: 拆分后的...然后在终端中运行以下命令:bashpython pdf_split_and_rename.py代码说明split_pdf 函数:将输入的 PDF 文件按页拆分为多个单独的 PDF 文件。...pdf_page_to_image 函数:将拆分后的 PDF 页面转换为图像,以便进行 OCR 识别。ocr_image 函数:使用腾讯云 OCR 服务识别图像中的文字。

9710
  • 用Python玩转PDF的各种骚操作

    PyPDF2是一个纯Python包,可用于许多不同类型的PDF操作。...Python 3的原始pyPdf有一个不同的Python 3分支,但是这个分支已经多年没有维护了。 虽然最近放弃了PyPDF2,但新的PyPDF4与PyPDF2没有完全的向后兼容性。...最后一页是第3页,没有对其进行任何旋转。最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...以下是如何使用PyPDF2将PDF拆分为多个文件: fromPyPDF2importPdfFileReader,PdfFileWriter defsplit(path,name_of_split): pdf

    2.1K50

    【教程】如何批量图片文字识别软件,批量图片文字识别OCR软件系统,批量图片压缩,PDF批量转文字转图片

    (后期正计划一个文件夹内的多个文件夹分组识别,没需求就没做) PDF文件文字识别怎么弄,现将PDF拆成图片,做了个功能批量PDF拆成图片后批量导入图片再识别 基于Net4.5框架做的,软件支持win7以上系统...,苹果的文字识别就先暂时不开发 说说有哪些功能吧 第一、支持语言:中英文、法语、俄语、葡萄牙、俄语、德语、韩语、日语这些需要更多的还可以加; 第二、PDF拆图:可以将多个PDF拆成图,分组存放指定文件夹...、便于按文件夹批量导入图片等; 第三、图片压缩:图片太大影响识别,所以我们做了一个图片压缩的工具,可以将图片的范围控制在可识别范围; PS:建议图片在4M的范围内,像素也不易过高4096X4096...太高了就不支持了 第四、一键复制:可以将识别出来的文字一键复制出来,方便粘贴到指定位置; 第五、一键导出:可以将文字导出至记事本txt保存起来,为什么不是word,比较难控制格式哈不在这上面多花精力了...第六、识别过程中可中途暂停,没有写继续,用的时候发现错误了,就再来一遍,或者把识别的删掉,从没识别的开始 速度嘛2-3秒一页,看图片大小,软件识别需要联网使用,基于人工智能文字识别做的,也有单机版本的准确率不是很高

    41.4K10

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

    PyPDF2是一个纯Python包,可用于许多不同类型的PDF操作。...Python 3的原始pyPdf有一个不同的Python 3分支,但是这个分支已经多年没有维护了。 虽然最近放弃了PyPDF2,但新的PyPDF4与PyPDF2没有完全的向后兼容性。...最后一页是第3页,没有对其进行任何旋转。最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...以下是如何使用PyPDF2将PDF拆分为多个文件: from PyPDF2 import PdfFileReader, PdfFileWriter def split(path, name_of_split

    1.1K30

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

    PyPDF2是一个纯Python包,可用于许多不同类型的PDF操作。...最后一页是第3页,没有对其进行任何旋转。最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...以下是如何使用PyPDF2将PDF拆分为多个文件: from PyPDF2 import PdfFileReader, PdfFileWriter def split(path, name_of_split...对于PDF中的每个页面,创建一个新的PDF的writer实例并向其添加单个页面。然后,将该页面写入一个唯一命名的文件。脚本运行完毕后,就可以将原始PDF的每个页面拆分为单独的PDF。

    1.2K20

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

    PyPDF2是一个纯Python包,可用于许多不同类型的PDF操作。...Python 3的原始pyPdf有一个不同的Python 3分支,但是这个分支已经多年没有维护了。 虽然最近放弃了PyPDF2,但新的PyPDF4与PyPDF2没有完全的向后兼容性。...最后一页是第3页,没有对其进行任何旋转。最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...以下是如何使用PyPDF2将PDF拆分为多个文件: from PyPDF2 import PdfFileReader, PdfFileWriter def split(path, name_of_split

    2K20

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

    PyPDF2是一个纯Python包,可用于许多不同类型的PDF操作。...Python 3的原始pyPdf有一个不同的Python 3分支,但是这个分支已经多年没有维护了。 虽然最近放弃了PyPDF2,但新的PyPDF4与PyPDF2没有完全的向后兼容性。...最后一页是第3页,没有对其进行任何旋转。最后,使用.write()把所有新页写入新的PDF。 如何合并PDF? 在许多情况下,我们希望将两个或多个PDF合并到一个PDF中。...挑战一点的话,也可以使用Python的argparse模块为这个函数创建一个命令行接口。 如何拆分PDF? 有时可能需要将PDF拆分为多个PDF,对于包含大量扫描内容的PDF来说尤其重要。...以下是如何使用PyPDF2将PDF拆分为多个文件: from PyPDF2 import PdfFileReader, PdfFileWriter def split(path, name_of_split

    1.5K40

    使用Python拆分和合并PDF文件

    提取有关PDF文件的基本信息 让我们检查一些关于这个PDF文件的基本信息。看起来作者是使用MS Word创建了这个12页的文档,然后将其转换为PDF。...图1:使用Python提取PDF文件基本信息 为了演示,我将从文件中随机提取一些页面,假设我只想获得第1-3、5、6和11-12页。...getPage(0)是pdf文件的第一页,pdf.getPage(11)是最后一页。调用pdf.getPage(12)将抛出“索引超出范围”错误,因为这意味着正试图访问12页文件中的第13页。...getPage()方法允许我们将PDF文件拆分为单独的页面,以便我们可以选择,然后使用Python将它们合并到一个文件中。...: pdf_writer.write(f) 将多个页面合并到同一个PDF文件中 我们现在可以继续从PDF中获取所有需要的页面,并将它们合并到一个文件中。

    2.6K10

    几百个pdf文件要删除广告页?Power Automate批量轻松搞定! | PA实战案例

    | PA实战案例》里所用的方法——将 PDF 页面提取到新的 PDF,在此不再赘述。 下面,我们主要讲批量操作多个文件的两种情况:删除页位置固定、删除页位置需通过页面内容搜索判断。...- 1 - 待删除页在固定位置 这个情况也可以使用“将PDF页面提取到新的PDF”功能来实现,但是,问题在于仍然要借助pdftk工具识别出pdf文件的总页数,因此,我们直接使用pdftk工具的合并功能,...直接合并(删除)掉相应页面——该合并功能实在太好用,具体使用方法在此再举例赘述一下: 比如,要将adv.pdf文件插入到文件“01 Nov 2029.pdf”的第3页后,pdftk处理命令可写为: pdftk...但是,经研究,发现pdftk支持我们将pdf文件按页拆成不同的文件(每页一个),这样,我们再针对拆分后的文件提取其内容进行判断,如果包含特定信息,我们直接把该页文件删除,然后再对剩下的页文件进行合并,不就能达到同样的目的了吗...Step-01 获取文件夹中的文件 Step-02 添加 for each 循环 Step-03 用原文件名创建文件夹,用于存放拆页后的文件 Step-04 运行DOS命令,将pdf文件拆解到文件夹

    1.3K30

    PyPDF2的使用「建议收藏」

    PDF合成包含链接和按钮,表单字段,音频,视频和业务逻辑 在这篇文章中,我们将学习如何做一些pdf的操作: 从PDF中提取文字 旋转pdf页 合并pdf 分割pdf 向pdf页中添加水印...使用简单的python脚本 1、安装 我们将使用第三方的模块 PyPDF2 ---- PyPDF2是作为PDF工具包构建的python库,它能够: 提取文档信息(标题,作者,…) 按页拆分文档 逐页合并文档...裁剪页面 合并多个页面到一个页 对pdf文档进行加密解密 等等 安装PyPDF2,在命令行下执行命令: pip install PyPDF2 ---- 注意,这个模块的名字对大小写是敏感的,所以,确保...) #将水印pdf的首页与传入的原始pdf的页进行合并 pageObj.mergePage(pdfReader.getPage(0)) wmFileObj.close...(pdfFileObj) #创建一个指向新的pdf文件的指针 pdfWriter = PyPDF2.PdfFileWriter() #通过迭代将水印添加到原始pdf的每一页

    1.1K40

    在 Python 中创建和修改 PDF 文件

    在本教程中,您将学习如何: 从 PDF 中读取文本 将 PDF拆分为多个文件 连接和合并PDF 文件 在 PDF 文件中旋转和裁剪页面 使用密码加密和解密PDF文件 从头开始创建PDF 文件 注意:本教程改编自...连接和合并 PDF 处理 PDF 文件时的两个常见任务是将多个 PDF 连接并合并为一个文件。 当您连接两个或多个 PDF 时,您将文件一个接一个地合并为一个文档。...如果您report.pdf使用 PDF 阅读器打开文件,您将看到报告的第一页是标题页。第二个是简介,其余页面包含不同的报告部分。 您想在标题页之后和介绍部分之前插入目录。...有多种方法可以在 PDF 中旋转页面。我们将讨论两种不同的方法。它们都依赖于.rotateClockwise(),但它们采用不同的方法来确定哪些页面被旋转。...您可能需要这样做以将单个页面拆分为多个页面或仅提取页面的一小部分,例如签名或图形。 例如,该practice_files文件夹包含一个名为half_and_half.pdf.

    13K70

    Python工具 | pdf转excel的python方法

    最近不知道写什么了,正好昨天整理了几学期的年级排名,需要pdf转excel,所以百度学习了一下python的pdfplumber库 但是pdfplumber只能解析规整的完美的表格,那种乱七八糟的格式的表格...install openpyxl import os wb = Workbook() # 创建文件对象 ws = wb.active # 获取第一个sheet path=os.getcwd()+"/2.pdf..." #当前路径下的pdf文件 pdf = pdfplumber.open(path) #打开pdf文件 print('\n') print('开始读取数据') print('\n') #第一页第一行标题...,解析只对规整的表格有用,凸(艹皿艹 ) #ws.append(pdf.pages[0].extract_tables()[0][0]) for page in pdf.pages: # 获取当前页面的全部文本信息...) for row in table: # print(row) #把列表拆了 rowlist=str(row).

    2.2K50

    给pdf文件插入一页,Power Automate是怎么自动做到的? | PA实战

    一般可能存在两种可能: 1、在文件开头或结尾插入,即追加一个文件到另一个; 2、在文件的中间插入另一个文件。 下面我们分不同的情况进行讨论。...- 1 - 在文件开头或结尾插入(追加) 这种情况在实际工作中应该最为常见,也是最为简单的,因为,这实际就是将两个文件合并在一起,只是要注意选择PDF文件时生成的列表中要插入的页(文件)的位置正确即可。...- 2 - 在指定页位置插入 理论上来说,在指定页面位置插入其他pdf文件(页),可以通过两次使用“将PDF文件页面提取到新的PDF文件”功能,将pdf文件以指定要插入页面的位置进行“分拆”,提取成两个独立的...- 3 - 借助pdftk轻松插入页 前面提到,如果要通过拆分再合并的方式实现页面插入,需要借助pdftk工具进行页面数的识别,既然这样,倒不如直接使用pdftk工具的合并pdf文档命令——炒鸡强大、灵活...3 B A4-end output out.pdf 这个命令的写法很有意思:将"01 Nov 2019.pdf"文件设为A,“adv.pdf”文件设为B,然后合并【A的第1-3页、B、A的第4-最后一页

    96330

    独家 | 手把手教你如何用Python从PDF文件中导出数据(附链接)

    不幸的是,并没有多少Python包可以很好的执行这部分工作。在这篇贴子中,我们将探讨多个不同的Python包,并学习如何从PDF中提取某些图片。...当你直接使用PDFMiner包时,往往会有点繁琐。这里,我们从PDFMiner的不同模块中引入多个不同的类。由于这些类都没有文档说明,也没有实现其文档字符串属性,我将不会深入讲解它们做了什么。...extract_text函数按页打印出文本。此处我们可以加入一些分析逻辑来得到我们想要的分析结果。或者我们可以仅是将文本(或HTML或XML)存入不同的文件中以便分析。...不推荐使用HTML格式,因为pdf2txt生成的标记往往会很丑。以下是教你如何生成不同格式输出的方法: ? 第一条命令将创建一个HTML文件,而第二条将创建一个XML文件。...这段代码将使用Python内置的XML库,minidom和ElementTree。我们也引入PDFMiner生成器代码以用于每次抓取一页文本。在这个例子中,我们用PDF的文件名创建了我们顶层的元素。

    5.4K30

    AI办公自动化-用kimi把PDF文档按照章节自动拆分成多个docx文档

    可以在kimichat中输入提示词: 你是一个Python编程专家,要完成一个编写拆分PDF文档的Python脚本的任务,具体步骤如下: 打开文件夹:D:\chatgpt图书\图书1, 读取文件夹里面的...Learn AI-assisted Python Programming; 这个PDF文档里面一共有11个章节,需要拆分出来的章节是这6、7、8、9这三个章节: 第6章Testing and prompt...7章、第8章、第9章分拆成3个独立的PDF文档,文档标题名和章节标题名一致,保存在文件夹:打开文件夹:D:\chatgpt图书\图书分拆; 然后用python-docx库将PDF文档转换成docx文档格式...图书分拆" pdf_filename = "Porter L....Learn AI-assisted Python Programming.pdf" # 定义章节的页码范围 chapters = { "Problem decomposition": (124, 157

    13810

    数据导入与预处理-第4章-数据获取python读取pdf文档

    pdf也是文本格式之一,最大的特点是不能直接编辑,因此建议在编辑pdf文件时转换为可编辑的格式,或者在使用编辑工具直接创建pdf文件时简单地直接使用编辑器。...二、发展趋势 1.pdf文件格式是1990年代初期开发的,可以包含文件的格式,作为内置图像的共享方法,而且可以跨平台操作, 完全不同的计算机平台上的收件人不一定在相关或并用的应用程序入当时与PDF竞争跨平台文件形式...pdfplumber是一个完全由Python开发的PDF解析库,它不仅可以读取PDF文件中的文本数据,还可以读取PDF文件中的表格数据。...Page类提供了多个从每页PDF中提取不同内容的方法。...使用pdfplumber库读取PDF文件的基本步骤: 2.2 pdfplumber基本操作 本操作基于一个 集合介绍.pdf 的文档,内容截图如下: 什么内容都不重要,大家在使用的使用,

    1.2K30

    软件测试|教你用Python处理PDF文件(一)

    前言 我们在工作中,难免会遇到需要处理PDF文件的情况,PDF文件与Word文件不同,内容提取不是很容易,表格和图片都需要特别处理。...但是PDF文件的内容复制并不方便,要是能够使用Python将内容取出来的话,就会很舒服了!本文就来给大家介绍一下Python处理PDF文件的方法。...' # 将待拼接的pdf文件以绝对路径的形式放在一个列表里 pdf_list = [f for f in os.listdir(src_path) if f.endswith('.pdf')] pdf_list...添加水印 如果我们想要为PDF文件添加水印,可以用于防伪等方面,那也是可以使用Python来实现的,代码如下: from PyPDF2 import PdfWriter, PdfReader # 读取作为水印的...Python读取PDF文件以及合并多个PDF文件,为PDF文件添加水印功能的实现,后续我们将为大家介绍为PDF加密与解密的操作。

    29720

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

    PyPDF2 使用从零开始的索引来获取页面:第一页是第 0 页,第二页是第 1 页,以此类推。即使文档中的页码不同,情况也总是如此。...相反,您必须创建一个新的 PDF,然后从现有文档中复制内容。本节中的示例将遵循这一通用方法: 将一个或多个现有 PDF(源 PDF)打开到PdfFileReader对象中。...使用 Python,很容易将水印添加到多个文件中,并且只添加到程序指定的页面中。 从下载watermark.pdf,将 PDF 和meetingminutes.pdf放在当前工作目录下。...项目:合并从多个 PDF 中选择的页面 假设您有一项枯燥的工作,要将几十个 PDF 文档合并成一个 PDF 文件。他们每个人都有一个封面页作为首页,但你不希望封面页在最终结果中重复。...我们可以看到,将一个段落划分为多个游程并单独访问每个游程是很简单的。所以我们在第二段得到了第一、第二和第四次运行;每次跑步的风格;并将结果保存到新文档中。

    3.7K50
    领券