广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python合并pdf文件的工具
  • 306
分享到

Python合并pdf文件的工具

2024-04-02 19:04:59 306人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

  如果你需要一个pdf文件合并工具,那么本文章完全可以满足您的要求。哈喽,大家好呀,这里是滑稽研究所。不多废话,本期我们利用python合并把多个pdf文件

  如果你需要一个pdf文件合并工具,那么本文章完全可以满足您的要求。哈喽,大家好呀,这里是滑稽研究所。不多废话,本期我们利用python合并把多个pdf文件合并为一个。我们提前准备了5个pdf文件,来验证代码。

在这里插入图片描述
  源代码:


import os
from PyPDF2 import PdfFileReader, PdfFileWriter

# 使用os模块的walk函数,搜索出指定目录下的全部PDF文件
# 获取同一目录下的所有PDF文件的绝对路径
def getFileName(filedir):

    file_list = [os.path.join(root, filespath) \
                 for root, dirs, files in os.walk(filedir) \
                 for filespath in files \
                 if str(filespath).endswith('pdf')
                 ]
    return file_list if file_list else []

# 合并同一目录下的所有PDF文件
def MergePDF(filepath, outfile):

    output = PdfFileWriter()
    outputPages = 0
    pdf_fileName = getFileName(filepath)

    if pdf_fileName:
        for pdf_file in pdf_fileName:
            print("路径:%s"%pdf_file)

            # 读取源PDF文件
            input = PdfFileReader(open(pdf_file, "rb"))

            # 获得源PDF文件中页面总数
            pageCount = input.getNumPages()
            outputPages += pageCount
            print("页数:%d"%pageCount)

            # 分别将page添加到输出output中
            for iPage in range(pageCount):
                output.addPage(input.getPage(iPage))

        print("合并后的总页数:%d."%outputPages)
        # 写入到目标PDF文件
        outputStream = open(os.path.join(filepath, outfile), "wb")
        output.write(outputStream)
        outputStream.close()
        print("PDF文件合并完成!")

    else:
        print("没有可以合并的PDF文件!")

# 主函数
def main():
    file_dir = input('请输入存有Pdf的文件夹').replace('/','//')# 存放PDF的原文件夹
    outfile = "pick_me.pdf" # 输出的PDF文件的名称
    MergePDF(file_dir, outfile)
    print('done')

main()

在这里插入图片描述
在这里插入图片描述

  可以看到5个PDF文件合并到了一起,那么到这里就结束了吗?当然不是,代码运行遇到PDF文件中文件格式较多时,比如多图,Word格式等,会出现以下报错。

在这里插入图片描述

  最后一行报错的意思为:

PyPDF2。utils.PdfReadError:对于键/Im82,字典中字节0xc0161处有多个定义

  通俗一点就是说遇到了一个多义词,程序不知道该取哪个意思了。我们点进pdf.py文件里,找到下图位置。

在这里插入图片描述

  严格模式默认是打开的,我们改成False。

构造方法:
PyPDF2.PdfFileReader(stream,strict = True,warndest = None,overwriteWarnings = True)
stream:File 对象或支持与 File 对象类似的标准读取和查找方法的对象,也可以是表示 PDF 文件路径的字符串
strict(bool):确定是否应该警告用户所用的问题,也导致一些可纠正的问题是致命的,默认是 True
warndest : 记录警告的目标(默认是 sys.stderr)
overwriteWarnings(bool):确定是否 warnings.py 用自定义实现覆盖 Python 模块(默认为 True)

  我们重新运行程序.

在这里插入图片描述

  打开文件夹,可以看到我们的文件已经合并好了,打开之后的格式也是没有错误的。
  那么,问题解决。

在这里插入图片描述

  如果你只是需要应该PDF合并工具代码直接拿走用即可,如果你想学习pypdf2这个实用的库,并且希望对这段代码进行改进来适配自己的情况

到此这篇关于Python合并pdf文件的文章就介绍到这了,更多相关Python合并pdf文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python合并pdf文件的工具

本文链接: https://www.lsjlt.com/news/129577.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python合并pdf文件的工具
      如果你需要一个PDF文件合并工具,那么本文章完全可以满足您的要求。哈喽,大家好呀,这里是滑稽研究所。不多废话,本期我们利用Python合并把多个pdf文件...
    99+
    2022-11-12
  • python的​PyPDF2实现pdf文件切割和合并
    今天想使用pdf的切分软件实现pdf文件的切分,但是软件需要会员???好吧,,,,又要会员,这么简单的功能能难倒咱们程序员吗。俗话说自给自足丰衣足食,决定使用python自己切分文件...
    99+
    2022-11-13
  • Node.js实现JS文件合并小工具
    临近春节,项目结束了,没事情做,于是就想学学node.js,之前写了一个是为了实验室项目的需要,用c#写了个js代码压缩合并的小插件,后来想到可以用node重构,于是就练练手吧,下面小编直接给大家上代码了。...
    99+
    2022-06-04
    小工具 文件合并 Node
  • python的​PyPDF2怎么实现pdf文件切割和合并
    这篇文章将为大家详细讲解有关python的PyPDF2怎么实现pdf文件切割和合并,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在百度了一番后,发现大多都是使用 Adobe Acrobat 软件进行剪裁,...
    99+
    2023-06-29
  • pdf文件如何合并成一个
    这篇文章主要介绍“pdf文件如何合并成一个”,在日常操作中,相信很多人在pdf文件如何合并成一个问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”pdf文件如何合并成一个”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-07-02
  • Java给PDF加水印并合并多个文件
    目录前言准备环境代码添加依赖工具类测试测试加水印与背景测试pdf合并总结前言 本文基于itext7实现pdf加水印和合并的操作。实际上在我们实际项目应用中,对于pdf的操作也是比较常...
    99+
    2022-11-13
  • 可视化文件比较合并工具Araxis Merge Mac
    Araxis Merge for Mac是由Araxis公司开发出品运行在macOS平台上功能强大简单易用的一款开发软件,Araxis Merge for Mac是一个可视化的文件比较和同步、合并的软件,Araxis Merge Mac能够...
    99+
    2023-06-05
  • 详解PHP合并多个PDF文件的方法
    目录1. composer 安装 PDF组件2. 使用1. composer 安装 PDF组件 composer require setasign/fpdi composer req...
    99+
    2022-11-13
  • 如何在 Java 中将多个 PDF 文件合并为一个 PDF
    如果您正在开发涉及处理 PDF 文件的 Java 项目,则可能需要将多个 PDF 文件合并到一个文档中。在本文中,我们将演示如何使用 Java 编程语言来实现这一目标。我们将从以下两个方面向您展示如何将多个PDF文件合并为一个PDF: 将文...
    99+
    2023-08-18
    java pdf python
  • Python爬取csnd文章并转为PDF文件
    目录1.导入模块2.创建文件夹3.发送请求4.数据解析5.如果把列表里面每一个元素 都提取出来6.替换特殊字符7.转换成PDF文件本篇文章流程(爬虫基本思路): 数据来源分析 (只有...
    99+
    2022-11-12
  • 基于PyQt5制作一个PDF文件合并器
    操作说明:选择多个PDF文件,执行完合并后会生成一个新的PDF文件,这个新的PDF文件包含所有源PDF文件的页面。 将相关的三方模块导入到代码块中... from PyQt5.Qt...
    99+
    2022-11-13
  • python之pdfminer:从PDF文档中抽取信息的工具
    pdfminer是一个用于从PDF文档中抽取信息的Python库。它提供了一系列的功能,使我们能够读取和解析PDF文件,并从中提取文本内容、元数据、页面布局和图片等。本文将详细介绍pdfminer库的使用示例,包括安装、解析文档、提取文本和...
    99+
    2023-09-20
    python 开发语言 pdfminer
  • 基于Python实现PDF区域文本提取工具
    目录功能简介开发代码功能简介 打开软件后界面如下: 点击打开文件按钮打开之前的PDF文件后效果如下: 框选区域后,标题栏会自动显示当前框选的区域提取到的文字,还可以左右按钮切换:...
    99+
    2022-11-12
  • python文件夹,文件监听工具(pyi
    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 支持的监控事件 @cvar IN_ACCESS: File was accessed. @type IN_ACCESS: int @cvar IN_MODIFY: File...
    99+
    2023-01-31
    文件夹 文件 工具
  • python实现文本文件合并
    python合并文本文件示例代码。 python实现两个文本合并 employee文件中记录了工号和姓名 cat employee.txt: 100 Jason Smith 200 John Doe...
    99+
    2022-06-04
    文本 文件合并 python
  • Python怎么爬取csnd文章并转为PDF文件
    今天就跟大家聊聊有关Python怎么爬取csnd文章并转为PDF文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.导入模块import requests #&...
    99+
    2023-06-22
  • 基于Java编写一个PDF与Word文件转换工具
    目录前言实现方法pom.xml策略接口PDF转图片实现PDF转word实现word转htmlword转图片word转pdf使用前言 前段时间一直使用到word文档转pdf或者pdf转...
    99+
    2023-01-10
    Java PDF转Word Java Word转PDF Java Word PDF
  • python怎么批量合并文件
    使用python批量合并excel文件的方法:1.新建python项目;2.导入os和pandas模块;3.使用os.listdir()方法列出文件;4.使用pd.concat()方法批量合并文件;具体步骤如下:首先,打开pyth...
    99+
    2022-10-07
  • Python实现PDF文字识别提取并写入CSV文件
    目录1.前言2.需求描述3.开始动手动脑3.1安装相关第三方包3.2导入需要用到的第三方库3.3读取pdf文件,并识别内容3.4对识别的数据进行处理,写入csv文件总结1. 前言 扫...
    99+
    2022-11-13
  • Python提取PDF指定内容并生成新文件
    在之前的Python办公自动化案专题中,我们已经介绍了如何有选择的提取某些页面进行合并。 但是很多时候,我们并不会预知希望提取的页号,而是希望将包含指定内容的页面提取合并为新PDF,...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作