如何用Python合并多个pdf 的文件夹

当我们下载了需要学习的资料时,发现每篇都是一个独立的章节用起来很不方便,这时候我们可以用Python把它们合并,接下来就一起看看操作方法吧。

一、文件图



二、合并效果



三、python代码


# -*- 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 FilesPython27python.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

合并好的pdf是不是方便查阅了呢~更多Python学习推荐:云海天Python教程网。

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 如何用Python合并多个pdf 的文件夹