国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術(shù)及教程分享平臺!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - 拿來就用!Python批量合并PDF的示例代碼

拿來就用!Python批量合并PDF的示例代碼

2020-08-11 00:01劉早起 Python

這篇文章主要介紹了Python批量合并PDF的示例代碼,幫助大家更好的理解和學(xué)習(xí)Python,感興趣的朋友可以了解下

大家好,今天分享一個實用的辦公腳本:將多個PDF合并為一個PDF,例如我手上現(xiàn)在有如下3個PDF分冊,需要整合成一個完整的PDF

拿來就用!Python批量合并PDF的示例代碼

如果換成你操作的話,是不是打開百度搜索:PDF合并,然后去第三方網(wǎng)站操作,可能會收費不說還擔心文件泄漏,現(xiàn)在有請Python出場,簡單快速,光速合并,拿走就用!

首先導(dǎo)入需要的庫和路徑設(shè)置

?
1
2
3
4
5
6
7
import os
from PyPDF2 import PdfFileReader, PdfFileWriter
if __name__ == '__main__':
  # 設(shè)置存放多個pdf文件的文件夾
  dir_path = r'C:\Scientific Research\Knowladge\Ophthalmology\Chinese Ophthalmology'
  # 目標文件的名字
  file_name = "中華眼科學(xué)(第3版)合并版.pdf"

接著獲取所有pdf文件的絕對路徑,這里需要利用os庫中的os.walk遍歷文件和os.path.join拼接路徑

?
1
2
3
4
for dirpath, dirs, files in os.walk(dir_path):
  print(dirpath)
  print(files)
# 結(jié)果返回當前路徑、當前路徑下文件夾,并以列表返回所有文件

拿來就用!Python批量合并PDF的示例代碼

建議直接將需要合并的pdf放在一個文件夾,這樣就無需再對文件后綴進行判斷,包裝成函數(shù)后如下:

?
1
2
3
4
5
def GetFileName(dir_path):
  file_list = [os.path.join(dirpath, filesname) \
         for dirpath, dirs, files in os.walk(dir_path) \
         for filesname in files]
  return file_list

調(diào)用該函數(shù)的結(jié)果

拿來就用!Python批量合并PDF的示例代碼

現(xiàn)在建立合并PDF的函數(shù)

?
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
def MergePDF(dir_path, file_name):
  # 實例化寫入對象
  output = PdfFileWriter()
  outputPages = 0
  # 調(diào)用上一個函數(shù)獲取全部文件的絕對路徑
  file_list = GetFileName(dir_path)
 
  for pdf_file in file_list:
    print("文件:%s" % pdf_file.split('\\')[-1], end=' ')
 
    # 讀取PDF文件
    input = PdfFileReader(open(pdf_file, "rb"))
    # 獲得源PDF文件中頁面總數(shù)
    pageCount = input.getNumPages()
    outputPages += pageCount
    print("頁數(shù):%d" % pageCount)
    # 分別將page添加到輸出output中
    for iPage in range(pageCount):
      output.addPage(input.getPage(iPage))
  print("\n合并后的總頁數(shù):%d" % outputPages)
  # 寫入到目標PDF文件
  print("PDF文件正在合并,請稍等......")
  with open(os.path.join(dir_path, file_name), "wb") as outputfile:
    # 注意這里的寫法和正常的上下文文件寫入是相反的
    output.write(outputfile)
  print("PDF文件合并完成")

拿來就用!Python批量合并PDF的示例代碼

可以看到雖然待合并的PDF文件比較大,但是依舊快速的合并成功!

最后附上完整代碼,只需將代碼中PDF的路徑和文件名修改即可使用!

?
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
import os
from PyPDF2 import PdfFileReader, PdfFileWriter
 
def GetFileName(dir_path):
  file_list = [os.path.join(dirpath, filesname) \
         for dirpath, dirs, files in os.walk(dir_path) \
         for filesname in files]
  return file_list
 
def MergePDF(dir_path, file_name):
  output = PdfFileWriter()
  outputPages = 0
  file_list = GetFileName(dir_path)
  for pdf_file in file_list:
    print("文件:%s" % pdf_file.split('\\')[-1], end=' ')
    # 讀取PDF文件
    input = PdfFileReader(open(pdf_file, "rb"))
    # 獲得源PDF文件中頁面總數(shù)
    pageCount = input.getNumPages()
    outputPages += pageCount
    print("頁數(shù):%d" % pageCount)
    # 分別將page添加到輸出output中
    for iPage in range(pageCount):
      output.addPage(input.getPage(iPage))
  print("\n合并后的總頁數(shù):%d" % outputPages)
  # 寫入到目標PDF文件
  print("PDF文件正在合并,請稍等......")
  with open(os.path.join(dir_path, file_name), "wb") as outputfile:
    # 注意這里的寫法和正常的上下文文件寫入是相反的
    output.write(outputfile)
  print("PDF文件合并完成")
 
if __name__ == '__main__':
  # 設(shè)置存放多個pdf文件的文件夾
  dir_path = r'C:\Scientific Research\Knowladge\Ophthalmology\Chinese Ophthalmology'
  # 目標文件的名字
  file_name = "中華眼科學(xué)(第3版)合并版.pdf"
  MergePDF(dir_path, file_name)

以上就是拿來就用!Python批量合并PDF的示例代碼的詳細內(nèi)容,更多關(guān)于Python合并PDF的資料請關(guān)注服務(wù)器之家其它相關(guān)文章!

原文鏈接:https://cloud.tencent.com/developer/article/1627099

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产成人在线视频 | av在线中文 | 国产日韩中文字幕 | 午夜视频在线 | 91高清在线 | 久久久久久亚洲精品 | 色综合天天天天做夜夜夜夜做 | 999精品视频 | 精品一区二区三区在线视频 | 在线播放视频一区二区 | 可以免费看黄的网站 | 久久久精品呻吟 | 欧美中文字幕一区二区 | 中文字幕一区在线观看视频 | 一区二区在线视频 | 欧美一区二区公司 | 午夜区 | 国产一区二区三区免费在线观看 | 欧美成人一区二区 | 国产黄色a级毛片 | 国产大片在线观看 | 久久小视频 | 欧美 日韩 综合 | t66y最新地址一地址二69 | 久久久国产一区 | 动漫卡通精品一区二区三区介绍 | 亚洲国产第一页 | 91av免费| av免费网站 | 狠狠干美女 | 日本a网 | 狠狠干天天爱 | 一区二区电影 | 日韩成人av在线 | 亚洲区视频 | 黄大片在线观看 | 在线观看亚洲一区二区三区 | 成人精品国产免费网站 | av黄色网 | 国产黄色在线观看 | 黄色一级视频在线观看 |