Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Beispiel für das Zusammenführen aller PDF-Dateien im selben Ordner

Python-Beispiel für das Zusammenführen aller PDF-Dateien im selben Ordner

不言
不言Original
2018-04-28 10:22:502347Durchsuche

In diesem Artikel wird hauptsächlich die Methode von Python zum Zusammenführen aller PDF-Dateien im selben Ordner vorgestellt, einschließlich der damit verbundenen Bedienfähigkeiten von Python zum Lesen, Beurteilen, Entschlüsseln, Schreiben und Zusammenführen von PDF-Dateien.

Das Beispiel in diesem Artikel beschreibt, wie alle PDF-Dateien im selben Ordner in Python zusammengeführt werden. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

1. Anforderungsbeschreibung

Ich habe Andrew Ngs kostenloses Deep-Learning-PDF-Dokument von NetEase Cloud Classroom heruntergeladen. Aber jeder Abschnitt ist ein PDF. Ich lege diese PDF-Dokumente in einen Ordner und hoffe, sie in einer PDF-Datei zusammenzuführen. Also habe ich ein Python-Programm geschrieben, das dieses Problem sehr gut gelöst hat.

2. Datenformat

3. Zusammenführungseffekt

4. Python-Code-Implementierung

# -*- 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/Mehrere PDF-Dateien zusammenführen.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
Alle Seitenzahl:20
fertig
Gesamtzeitaufwand: 0,128000020981s
Prozess abgeschlossen mit Exit-Code 0

Verwandte Empfehlungen:

Python-Methode zum Zusammenführen aller TXT-Dateien im selben Ordner

Das obige ist der detaillierte Inhalt vonPython-Beispiel für das Zusammenführen aller PDF-Dateien im selben Ordner. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn