Python实现合并同一个文件夹下所有PDF文件的方法示例


本文摘自php中文网,作者不言,侵删。

这篇文章主要介绍了Python实现合并同一个文件夹下所有PDF文件的方法,涉及Python针对pdf文件的读取、判断、解密、写入合并等相关操作技巧,需要的朋友可以参考下

本文实例讲述了Python实现合并同一个文件夹下所有PDF文件的方法。分享给大家供大家参考,具体如下:

一、需求说明

下载了网易云课堂的吴恩达免费的深度学习的pdf文档,但是每一节是一个pdf,我把这些PDF文档放在一个文件夹下,希望合并成一个PDF文件。于是写了一个python程序,很好的解决了这个问题。

二、数据形式

三、合并效果

四、python代码实现

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

# -*- coding:utf-8*-

import sys

reload(sys)

sys.setdefaultencoding('utf-8')

import os

import os.path

from pyPdf import PdfFileReader,PdfFileWriter

import time

time1=time.time()

# 使用os模块walk函数,搜索出某目录下的全部pdf文件

######################获取同一个文件夹下的所有PDF文件名#######################

def getFileName(filepath):

  file_list = []

  for root,dirs,files in os.walk(filepath):

    for filespath in files:

      # print(os.path.join(root,filespath))

      file_list.append(os.path.join(root,filespath))

  return file_list

##########################合并同一个文件夹下所有PDF文件########################

def MergePDF(filepath,outfile):

  output=PdfFileWriter()

  outputPages=0

  pdf_fileName=getFileName(filepath)

  for each in pdf_fileName:

    print each

    # 读取源pdf文件

    input = PdfFileReader(file(each, "rb"))

    # 如果pdf文件已经加密,必须首先解密才能使用pyPdf

    if input.isEncrypted == True:

      input.decrypt("map")

    # 获得源pdf文件中页面总数

    pageCount = input.getNumPages()

    outputPages += pageCount

    print pageCount

    # 分别将page添加到输出output中

    for iPage in range(0, pageCount):

      output.addPage(input.getPage(iPage))

  print "All Pages Number:"+str(outputPages)

  # 最后写pdf文件

  outputStream=file(filepath+outfile,"wb")

  output.write(outputStream)

  outputStream.close()

  print "finished"

if __name__ == '__main__':

  file_dir = r'D:/course/'

  out=u"第一周.pdf"

  MergePDF(file_dir,out)

  time2 = time.time()

  print u'总共耗时:' + str(time2 - time1) + 's'

"D:\Program Files\Python27\python.exe" D:/PycharmProjects/learn2017/合并多个PDF文件.py
D:/course/C1W1L01 Welcome.pdf
3
D:/course/C1W1L02 WhatIsNN.pdf
4
D:/course/C1W1L03 SupLearnWithNN.pdf
4
D:/course/C1W1L04 WhyIsDLTakingOff.pdf
3
D:/course/C1W1L05 AboutThisCourse.pdf
3
D:/course/C1W1L06 CourseResources.pdf
3
All Pages Number:20
finished
总共耗时:0.128000020981s
Process finished with exit code 0

相关推荐:

Python实现合并同一个文件夹下所有txt文件的方法

以上就是Python实现合并同一个文件夹下所有PDF文件的方法示例的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

Python中随机取list中的元素方法

Python:如何增加文件的内容

Python运算符-位运算符的实际运用与深入分析

Python中sort是什么意思

Python构建xml树结构的实例教程

Python爬虫需要安装哪些库

Python中单下划线和双下划线有什么区别

1%的人知道的pandas骚操作,传授给你

多版本Python共存的配置方法

Python--aes加密与解密方法指导

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...