用python实现一个简单的PDF文件合并功能

作者:单先森
时间:2020-01-14
需求分析:
有时候看PDF文件几十个需要一个一个看,很麻烦。假如能合并一起就好了,考虑用python写一个简单的小程序试试。
代码编写:
用到了第三方库:tkinter库,和PyPDF2库,需要 pip 命令安装。python版本为3.8.0
博主python版本为3.8.0
利用pyinstaller 打包成一个 exe可执行文件,有需要的可以下载 到电脑上。双击打开后, Ctrl +选择多个PDF文件 进行合并操作。程序下载地址在最下方。

import tkinter as tk

from tkinter import filedialog

from PyPDF2 import merger, pdf


def mergerPDF(inFileList):
    '''
    按列表名称顺序合并pdf
    '''
    file_opt = options = {}

    options['defaultextension'] = '.pdf'

    options['filetypes'] = [('任意类型', '.*'), ('pdf文件', '.pdf')]

    options['initialfile'] = 'temp.pdf'

    options['parent'] = root

    options['title'] = '合并pdf文件'  # 定义另存为界面的内容

    pdfWriter = pdf.PdfFileWriter()

    for inFile in inFileList:

        pdfReader = pdf.PdfFileReader(open(inFile, 'rb'),strict=False)

        numPages = pdfReader.getNumPages()  # 获取文档页数

        for index in range(0, numPages):
            pageObj = pdfReader.getPage(index)  # 获取当前页

            pdfWriter.addPage(pageObj)  # 写入临时文件

    outFile = tk.filedialog.asksaveasfile(mode='w', **file_opt)  # 保存

    if outFile:

        pdfWriter.write(open(outFile.name, 'wb'))

        print("完成")

    else:

        print("失败")

root = tk.Tk()

root.withdraw()

file_path = filedialog.askopenfilenames()  # 按ctrl选取多个文件的文件名,按字母顺序排序

print(file_path)

mergerPDF(file_path)

附链接:
链接:https://pan.baidu.com/s/14SIW6WG6l1YTle3JZ3pd8w
提取码:mntf

二维码链接

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值